ΚΕΦΑΛΑΙΟ 2

ΤΕΧΝΟΛΟΓΙΕΣ ΑΣΦΑΛΕΙΑΣ ΣΤΟΝ ΠΑΓΚΟΣΜΙΟ ΙΣΤΟ
Χρήστος Κ. Γεωργιάδης
Αναπληρωτής Καθηγητής Πανεπιστημίου Μακεδονίας
geor@uom.edu.gr



Οκτώβριος 2015


Περιεχόμενα



Σύνοψη

Κύριος στόχος της ασφάλειας γενικότερα στα πληροφοριακά συστήματα, αλλά και ειδικότερα στα βασισμένα στον Παγκόσμιο Ιστό (Web-based) περιβάλλοντα, είναι η διαφύλαξη της εμπιστευτικότητας, της ακεραιότητας και της διαθεσιμότητας όλων των συστατικών τους μερών. Κάθε εξέλιξη της τεχνολογίας μοιάζει να δημιουργεί νέα προβλήματα ασφάλειας, έτσι η μεγαλύτερη πρόκληση στον χώρο της ασφάλειας οφείλεται ακριβώς στο ότι απαιτεί την άμεση εκμετάλλευση τεχνολογιών αιχμής για την αντιμετώπιση των νέων προβλημάτων που συνεχώς αναδύονται. Στο κεφάλαιο αυτό θα παρουσιαστούν αρχικά οι βασικές έννοιες γύρω από τα ζητήματα ασφάλειας. Στη συνέχεια θα εξεταστούν οι απειλές, οι βασικοί χειρισμοί, οι απαιτήσεις και οι λειτουργίες ασφάλειας στο Διαδίκτυο και στον Παγκόσμιο Ιστό. Τέλος, θα παρουσιαστούν σημαντικές τεχνολογίες ασφάλειας στον Παγκόσμιο Ιστό, όπως η κρυπτογράφηση, οι ψηφιακές υπογραφές, και οι υποδομές δημόσιου κλειδιού.

Προαπαιτούμενη γνώση

Το κεφάλαιο 1 του παρόντος συγγράμματος

1. Εισαγωγή

Ο αγγλικός όρος "security", φέρεται να είναι Λατινικής προέλευσης, αφού προέρχεται από τις αντίστοιχες λατινικές λέξεις "se" που σημαίνει "χωρίς" και "cura" που σημαίνει "φροντίδα" (Bullock & Benford, 1999). Δηλαδή η έννοια της ασφάλειας σε ένα σύστημα μπορεί και να ειδωθεί ως μια επιθυμητή ιδιότητα - κατάστασή του, κατά την οποία οι χρήστες του απαλλάσσονται κάθε έγνοιας και φροντίδας ως προς τη σωστή λειτουργία του.

Στις κυριότερες διαθέσιμες τεχνολογίες ασφάλειας στο Διαδίκτυο περιλαμβάνονται η κρυπτογράφηση, οι ψηφιακές υπογραφές, και οι υποδομές δημόσιου κλειδιού. Η κρυπτογραφία είναι στις μέρες μας κοινά αποδεκτή σαν το πλέον απαραίτητο εργαλείο ασφάλειας στο Διαδίκτυο. Δύο σημαντικές εφαρμογές κρυπτογραφίας είναι η κρυπτογράφηση και οι ψηφιακές υπογραφές. Η κρυπτογράφηση μπορεί να εξασφαλίσει ότι οι διακινούμενες πληροφορίες είναι εμπιστευτικές. Οι ψηφιακές υπογραφές βοηθούν στην επικύρωση της προέλευσης δεδομένων και επιβεβαιώνουν αν τα δεδομένα έχουν αλλοιωθεί. Περαιτέρω δυνατότητες προσφέρονται μέσω των υποδομών δημοσίου κλειδιού, οι οποίες με την έκδοση των πιστοποιητικών ταυτότητας, αποδεικνύονται ικανές για την υποστήριξη ενός μεγάλου μέρους λειτουργιών ασφάλειας στο Internet.

2. Ασφάλεια στο Διαδίκτυο

2.1 Εισαγωγικές έννοιες

Χρειάζεται να γίνει περισσότερο σαφής η εικόνα των «επικίνδυνων καταστάσεων» ή «ζημιών». Τι ακριβώς διακυβεύεται; Οι επικρατούσες απόψεις διακρίνουν τις τρεις ακόλουθες βασικές έννοιες σε σχέση με τη διαχείριση ενός ασφαλούς συστήματος (Cherdantseva & Hilton, 2013):

- Εμπιστευτικότητα (confidentiality): Είναι έννοια στενά συνδεμένη με την ιδιωτικότητα (privacy) και τη μυστικότητα (secrecy). Αφορά τη μη αποκάλυψη των ευαίσθητων πληροφοριών σε χρήστες που δεν έχουν την κατάλληλη εξουσιοδότηση.

- Ακεραιότητα (integrity): Αφορά τη δυνατότητα τροποποιήσεων (προσθήκες, διαγραφές και μεταβολές) των πληροφοριών. Μόνο σε κατάλληλα εξουσιοδοτημένους χρήστες πρέπει το σύστημα να επιτρέπει τέτοιου είδους ενέργειες. Έτσι διαφυλάσσεται η ακρίβεια και η πληρότητα των περιεχομένων ενός πληροφοριακού συστήματος.

- Διαθεσιμότητα (availability): Aφορά τη δυνατότητα άμεσης πρόσβασης στις πληροφορίες, στις υπηρεσίες και γενικότερα σε όλους τους πόρους πληροφορικής τεχνολογίας (IT resources) όταν ζητούνται, χωρίς αδικαιολόγητες καθυστερήσεις.



Ανάλογα με τη φύση τους, τα διάφορα πληροφοριακά συστήματα είναι περισσότερο ή λιγότερο «ευαίσθητα» στη δυνατότητα να υποστηρίξουν τα προαναφερθέντα χαρακτηριστικά της ασφάλειας. Γι' αυτό και η προσέγγιση της ασφάλειας πληροφοριακών συστημάτων ξεκινάει από την ανάλυση των αναγκών και των σχετικών κινδύνων που παρουσιάζονται σε κάθε περίπτωση. Στη συνέχεια υπολογίζονται οι επιπτώσεις που θα έχει η εφαρμογή των μηχανισμών προστασίας των πληροφοριών στην απόδοση του συστήματος (ταχύτητα, κόστος επεξεργασίας, ευκολία στη διαχείριση, φιλικότητα στο χρήστη κλπ.) (Pangalos, 1992) και τελικά διαμορφώνεται το κατάλληλο επίπεδο ασφάλειας ως η «χρυσή τομή» ανάμεσα στους κινδύνους που αποφεύγονται, στη συνολική απόδοση του συστήματος και στο κόστος ανάπτυξης και εφαρμογής των μηχανισμών ασφάλειας.

Είναι όμως κοινά αποδεκτό ότι δεν υπάρχει πλήρης ασφάλεια, με την έννοια ότι τα μέτρα πρόληψης ποτέ δε θα είναι ικανά να εμποδίσουν όλων των ειδών τις επικίνδυνες ενέργειες. Προνοώντας λοιπόν για κάθε ενδεχόμενο, μια ακόμη έννοια έρχεται να συμπληρώσει τα χαρακτηριστικά της διαχείρισης ασφάλειας: η υπευθυνότητα (accountability) (ISO/IEC 27000:2014, 2014). Πρέπει το σύστημα να είναι ικανό να καταγράφει επιλεκτικά κάποιες ενέργειες των χρηστών, έτσι ώστε να είναι δυνατόν όσες επηρεάζουν την ασφάλειά του να μπορούν να «ερευνηθούν», και να «οδηγήσουν» στο υπεύθυνο μέρος. Οπότε και είναι δυνατή η απόδοση ευθυνών στον κάθε χρήστη ανάλογα με τη δράση του.

Ο όρος αδυναμία-απάρνησης (non-repudiation) ως χαρακτηριστικό ασφάλειας, αποτελεί μια ειδική περίπτωση της έννοιας της υπευθυνότητας και αναφέρεται ακριβώς στο ότι ένας χρήστης δεν μπορεί να αρνηθεί την ανάληψη της ευθύνης για κάποια πράξη που έκανε. Τέλος, υπάρχουν και όροι που έχουν κάποια σχέση-αναλογία με την ασφάλεια συστημάτων όπως η αξιοπιστία (reliability) ή σιγουριά (safety), δηλαδή η ικανότητα των συστημάτων να λειτουργούν σωστά κάτω από αντίξοες συνθήκες, και η εγκυρότητα (dependability) η οποία ενσωματώνει συνήθως τις έννοιες και της ασφάλειας και της αξιοπιστίας.


2.2 Απειλές σε περιβάλλον Internet

Στις τυπικές απειλές ασφάλειας σε ένα περιβάλλον Διαδικτύου, συμπεριλαμβάνονται (Pangalos, 1998):

  • Βλάβες συστατικών μερών (component failure)

Σχεδιαστικά λάθη ή ελαττωματικά μέρη υλικού-λογισμικού, είναι ικανά να προκαλέσουν δυσλειτουργία σε κάποιο συστατικό του συστήματος και να οδηγήσουν έτσι σε άρνηση εξυπηρέτησης ή άλλες καταστάσεις επικίνδυνες για την ασφάλεια.

  • Ξεφύλλισμα πληροφοριών (information browsing)

Η αποκάλυψη ευαίσθητων πληροφοριών σε μη-εξουσιοδοτημένους χρήστες, είτε είναι εισβολείς είτε είναι νόμιμοι χρήστες που επιχειρούν παράνομους τρόπους προσπέλασης, οδηγεί στην απώλεια εμπιστευτικότητας και μπορεί να προκληθεί από την εκμετάλλευση διάφορων μηχανισμών.

  • Μη-εξουσιοδοτημένη διαγραφή, μεταβολή ή εισαγωγή πληροφοριών (unauthorized deletion, modification or insertion of information)

Η εκούσια ή και ακούσια πρόκληση ζημιών στα πληροφοριακά αγαθά (information assets) οδηγεί στην απώλεια ακεραιότητας για τις λειτουργίες - δεδομένα οργανισμών και ανθρώπων.

  • Κακή χρήση (misuse)

Η χρήση των πληροφοριακών αγαθών αλλά και των υπόλοιπων πόρων για σκοπούς διαφορετικούς από αυτούς που έχουν προκαθορισθεί, προκαλεί άρνηση εξυπηρέτησης, αύξηση κόστους λειτουργίας των συστημάτων ή δυσφήμιση. Ας μην ξεχνάμε ότι το καλό «επιχειρηματικό όνομα» αποτελεί σημαντικότατο περιουσιακό στοιχείο για οποιοδήποτε οργανισμό.

  • Διείσδυση (penetration)

Οι εισβολές από μη-εξουσιοδοτημένα πρόσωπα ή συστήματα μπορούν να προκαλέσουν άρνηση εξυπηρέτησης ή να απαιτήσουν σοβαρότατα χρηματικά ποσά για την αντιμετώπιση των συνεπειών των παρενοχλήσεων του συστήματος.

  • Διαστρέβλωση (misrepresentation)

Οι προσπάθειες ενός χρήστη που παρανομεί, να μεταμφιεστεί σαν ένας χρήστης με εξουσιοδοτήσεις τέτοιες ώστε να μπορεί να κλέψει πληροφορίες ή να εκμεταλλευτεί υπηρεσίες ή να εκκινήσει συναλλαγές που προκαλούν οικονομικές απώλειες ή δυσχέρειες σε ένα οργανισμό.


Για όλες τις προαναφερόμενες απειλές, εκτός της βλάβης συστατικών μερών, η προσφιλέστερη μέθοδος εκδήλωσης επίθεσης γίνεται παραβιάζοντας την ακεραιότητα του κώδικα. Οι κάθε λογής ιοί βρίσκουν γόνιμο έδαφος στο Διαδίκτυο, αφού η πλειονότητα των συνδεδεμένων συστημάτων χρησιμοποιούν μη-έμπιστα λειτουργικά συστήματα (WINDOWS και LINUX), χωρίς σοβαρές δυνατότητες αντίστασης στις απειλές αυτές (Pfleeger & Pfleeger, 2007). Επιπλέον σημαντικός παράγοντας αύξησης της συγκεκριμένης επικινδυνότητας αποτελεί ο τρόπος μετάδοσης αρχείων στο Web και κυρίως η δυνατότητα «κατεβάσματος» κώδικα (downloading code) για εκτέλεση μικρών ανεξάρτητων εφαρμογών (applets) των προγραμμάτων περιπλάνησης στο Διαδίκτυο που προσφέρονται από τις σύγχρονες γλώσσες όπως η Java. Όπως εύκολα μπορεί κανείς να συμπεράνει, πιθανές ατέλειες (flaws) των γλωσσών αυτών, αποτελούν αναμφισβήτητες ρωγμές ασφάλειας των συστημάτων.

Κάτι που πρέπει να τονιστεί στο σημείο αυτό, είναι ότι οι πιθανότητες να εκδηλωθούν επιθέσεις και να πραγματοποιηθούν απειλές όπως οι προαναφερθέντες, αυξάνονται όταν προσφέρεται στο Διαδίκτυο μια ευδιάκριτη εικόνα της οργάνωσης της δικτυακής υποδομής ενός συστήματος. Πάρα πολλές επιθέσεις στο Internet είναι ευκαιριακής φύσης (opportunistic), με την έννοια ότι δεν έχουν συγκεκριμένο στόχο παραβίασης. Απλά εκδηλώνονται σε ένα συγκεκριμένο σύστημα γιατί εκείνη τη στιγμή το σύστημα αυτό «φαντάζει» ως ιδανικός στόχος (τελικός ή ενδιάμεσος) για τους επίδοξους εισβολείς.

2.3 Βασικοί χειρισμοί ασφάλειας στο Διαδίκτυο

Σε γενικές γραμμές τα πρωτόκολλα του Internet, δίνουν τη δυνατότητα σε ένα τρίτο μέρος να παρέμβει με τους ακόλουθους τρόπους στην επικοινωνία δυο νόμιμων μερών (Gollmann, 2011):

  • Υποκλοπή (eavesdropping): Οι πληροφορίες παραμένουν ανέγγιχτες, αλλά παραβιάζεται η εμπιστευτικότητά τους. Πχ. η καταγραφή μιας ιδιωτικής συζήτησης.

  • Παραποίηση (tampering): Οι πληροφορίες κατά τη μεταφορά τους μεταβάλλονται ή τροποποιούνται και στη συνέχεια στέλνονται στον αποδέκτη. Πχ. η αλλαγή μιας αίτησης χρήστη (user’ request) ή μιας απάντησης συστήματος (system’ response).

  • Πλαστοπροσωπία (impersonation): Οι πληροφορίες πηγαίνουν σε ένα πρόσωπο που παριστάνει τον νόμιμο αποδέκτη. Χρησιμοποιείται και ο όρος προσποίηση (spoofing) για την περιγραφή της κατάστασης όπου κάποιος ή κάτι επιχειρεί να φανεί σαν κάποιος ή κάτι άλλο. Πχ. ένας χρήστης μπορεί να ισχυρίζεται ότι έχει μια συγκεκριμένη διεύθυνση e-mail, ή ένας δικτυακός τόπος μπορεί να αυτό-προσδιορίζεται ως μια συγκεκριμένη URL (Uniform Resource Locator) διεύθυνση, χωρίς τίποτε από αυτά να ισχύει στη πραγματικότητα.
Συνεπώς, οι χειρισμοί ασφάλειας (security controls) στο Διαδίκτυο κινούνται σε τρεις κυρίως κατευθύνσεις (Ahuja, 1997):
  • Αρχικά, είναι η προστασία της ιδιωτικότητας των δεδομένων με βασικό όπλο τους μηχανισμούς κρυπτογράφησης.

  • Στη συνέχεια είναι η προστασία στα επικοινωνούντα μέρη του ενός από τον άλλο, δηλαδή του αποστολέα από τον παραλήπτη, και αντίστροφα. Αυτό σημαίνει την προστασία της ακεραιότητας των δεδομένων από τότε που έφυγαν από τον αποστολέα, αλλά και την υποστήριξη αδυναμίας απάρνησης ενεργειών για τα δυο μέρη. Μηχανισμοί σχετικοί με ψηφιακές υπογραφές χρησιμοποιούνται ευρύτατα για τέτοιες λειτουργίες.

  • Τέλος, είναι ο έλεγχος γνησιότητας της ταυτότητας των χρηστών, των προγραμμάτων ή των μηχανημάτων (μέσω κυρίως συνθηματικών και ψηφιακών πιστοποιητικών) καθώς και των εξουσιοδοτήσεων που διαθέτουν για την προσπέλαση των προστατευμένων πόρων του συστήματος (μέσω μηχανισμών ελέγχου προσπέλασης).

2.4 Απαιτήσεις και λειτουργίες ασφάλειας στον παγκόσμιο Ιστό

Πιο αναλυτικά (Pfleeger & Pfleeger, 2007; Ahuja, 1997; Πάγκαλος & Μαυρίδης, 2002), η διαχείριση ασφάλειας (security management) οφείλει να υποστηρίξει τις ακόλουθες υπηρεσίες ασφάλειας (security services) – γνωστές και ως λειτουργίες ασφάλειας (security functions):

  • Εμπιστευτικότητα δεδομένων (data confidentiality): Η προστασία ενάντια σε μη-εξουσιοδοτημένες αποκαλύψεις πληροφοριών. Η τεχνολογία της κρυπτογράφησης (encryption or cryptography) είναι σχεδόν συνώνυμη της λειτουργίας αυτής, λόγω του κυρίαρχου ρόλου της.

  • Ακεραιότητα δεδομένων (data integrity): Η δυνατότητα εντοπισμού παραποίησης και ανάκτησης των δεδομένων. Για την προστασία της εγκυρότητας των δεδομένων εκτός της κρυπτογράφησης, χρησιμοποιούνται μηχανισμοί δημιουργίας περιλήψεων μηνυμάτων (message digests) και ψηφιακών υπογραφών (digital signatures).

  • Αδυναμία απάρνησης (non-repudiation): Η προστασία από τη μη-ανάληψη ευθύνης ενός αποστολέα ότι αυτός έστειλε συγκεκριμένα δεδομένα (non-repudiation of origin), καθώς και από την άρνηση ενός παραλήπτη ότι παρέλαβε κάποια δεδομένα (non-repudiation of delivery). Χρησιμοποιούνται οι προαναφερθέντες μηχανισμοί προστασίας ακεραιότητας δεδομένων, μαζί με υποδομές υποστήριξης και διακίνησης ψηφιακών πιστοποιητικών (X.509 certificates). Εποπτείες ή Αρχές Πιστοποίησης (Certification Authorities) αναλαμβάνουν την ευθύνη, ως τρίτες έμπιστες συμβολαιογραφικές αρχές (3rd party trusted notaries) για τη δημιουργία κλίματος εμπιστοσύνης στα επικοινωνούντα μέρη.

  • Αναγνώριση και πιστοποίηση (identification and authentication): Η απαίτηση πληροφοριών πιστοποίησης, οι οποίες διακινούνται συνήθως κρυπτογραφημένα, και οι οποίες μπορούν να επιβεβαιώνουν την ταυτότητα των μερών που επικοινωνούν. Ο έλεγχος αυθεντικότητας αφορά δυο διακεκριμένες περιπτώσεις:

    την ταυτότητα των χρηστών (user or entity authentication). Συνήθως συμβαίνει στην αρχή μιας τοπικής σύνδεσης (local logon) και οι μηχανισμοί που χρησιμοποιούνται ονομάζονται πρωτόκολλα αυθεντικότητας (authentication protocols). Παραδείγματα τέτοιων μηχανισμών είναι η χρήση αναγνωριστικού και συνθηματικού (user-ID & password), οι τεχνικές πρόκλησης-απόκρισης (challenge-response techniques) και άλλες μορφές διαπιστευτηρίων (credentials).


    την ταυτότητα των συστημάτων ως αφετηρίες - πηγές προέλευσης μηνυμάτων (origin authentication). Χρησιμοποιείται και ο όρος πιστοποίηση κατανεμημένων συστημάτων (authentication of distributed systems). Η λειτουργία αυτή έχει συναφές έργο με τη λειτουργία της αδυναμίας απάρνησης αποστολέα (non-repudiation of origin) και συνεπώς στηρίζεται στις μηχανισμούς ψηφιακών υπογραφών - πιστοποιητικών και αξιοποίησης έμπιστων τρίτων μερών (trusted third parties).



  • Έλεγχος προσπέλασης (access control) και εξουσιοδοτήσεις (authorizations): Η προστασία ενάντια σε μη-εξουσιοδοτημένη χρήση των πόρων, είτε είναι υλικό (δικτυακό υλικό, μονάδες επεξεργασίας - αποθήκευσης κλπ.), είτε λογισμικό (κώδικας που εκτελείται ή πρόκειται να εκτελεστεί), είτε δεδομένα. Μηχανισμοί όπως οι λίστες ελέγχου προσπέλασης (Access Control Lists-ACLs) και οι ετικέτες ασφάλειας (security labels), χρησιμοποιούνται για τον περιορισμό στην προσπέλαση των πόρων. Γενικότερα, υποστηρίζουν πολιτικές ασφάλειας που παρέχουν μια πολλαπλών επιπέδων και διαφοροποιημένη προσπέλαση πόρων (supporting different levels of resource access) στους χρήστες ανάλογα με το επίπεδο εμπιστοσύνης που μπορούν να τεκμηριώσουν. Τα δικαιώματα προσπέλασης (access rights) είναι οι απαραίτητες πληροφορίες που συσχετίζουν ένα σύστημα πελάτη με ένα σύστημα διακομιστή και καθορίζουν αν ο πελάτης θα αποκτήσει συγκεκριμένου τύπου προσπέλαση σε ένα συγκεκριμένο πόρο του διακομιστή. Να τονιστεί εδώ, ότι στον κόσμο του σύγχρονου παγκόσμιου Ιστού και ανάλογα με τη χρονική στιγμή, ένας διακομιστής λειτουργεί προσωρινά ως πελάτης και το αντίστροφο.Οπότε η ασφάλεια πρέπει κάθε φορά να «βλέπει» και προς τις δυο κατευθύνσεις ροής των πληροφοριών.

    Επιπλέον σημαντικές παράμετροι για τη διαχείριση ασφάλειας στο Διαδίκτυο, αποτελούν οι μηχανισμοί:

  • Επίβλεψης (auditing) και υπευθυνότητας (accountability): Καταγράφουν τις δηλώσεις ταυτότητας και τις ενέργειες των χρηστών (αλλά και των συστημάτων) που αποκτούν πρόσβαση σε προστατευμένους πόρους.

  • Ελέγχου αποδοτικότητας δικτύου (efficiency controls): Πρόκειται για μηχανισμούς που καταγράφουν και παρακολουθούν τη συνολική απόδοση του συστήματος και την κίνηση του δικτύου, με σκοπό την αποτροπή καταστάσεων άρνησης εξυπηρέτησης (prevention of Denial of Service).

  • Υποστήριξης συνεργασίας των υπηρεσιών ασφάλειας που προσφέρονται από εφαρμογές (callable security services from applications): Οι εφαρμογές παγκόσμιου Ιστού, διαθέτουν ενδεχομένως χαρακτηριστικά ασφάλειας που πρέπει να μπορούν να κληθούν και να λειτουργούν με ενιαίους τρόπους. Η βασική έννοια της υποστήριξης ενός βασικού πλαισίου συνεργασίας ασφαλών εφαρμογών (Security Application Program Interface) προωθείται μέσω του προτύπου Generic Security Service API (GSSAPI).

2.5 Σχέσεις υπηρεσιών –- μηχανισμών

Στηριζόμενοι στις επισημάνσεις των προηγουμένων παραγράφων και στην ευρέως αποδεκτή σύσταση της ITU για υιοθέτηση του προτύπου ISO 7498-2 για την αρχιτεκτονική υπηρεσιών ασφάλειας (ITU-T Χ.800 & ISO/IEC 7498-2, 1991), παραθέτουμε τον ακόλουθο απλοποιημένο πίνακα που χωρίς να είναι δεσμευτικός, επισημαίνει παραστατικά ποιοι μηχανισμοί ασφάλειας μπορούν να χρησιμοποιηθούν για να υποστηρίξουν αντίστοιχες υπηρεσίες ασφάλειας.

Υπηρεσία

Κρυπτογράφηση

Ψηφιακ Υπογρ.

Έλεγχοι Προσπέλ

Μηχαν. Ακερ.

Πρωτοκ. Αυθεντ.

Παρεμβ. Κίνησης

Έλεγχοι Δρομολ.

Έμπιστα Τρίτα Μέρη

Εμπιστευτικότητα δεδομένων

Χ

Εμπιστευτικότητα ροής δεδομένων

Χ

Χ

Χ

Ακεραιότητα δεδομένων

Χ

Χ

Χ

Αδυναμία απάρνησης αποστολέα

Χ

Χ

Χ

Χ

Αδυναμία απάρνησης παραλήπτη

Χ

Χ

Χ

Χ

Πιστοποίηση χρήστη

Χ

Χ

Χ

Χ

Πιστοποίηση προέλευσης-συστημάτων

Χ

Χ

Χ

Χ

Έλεγχος προσπέλασης - εξουσιοδοτήσεις

Χ

Χ

Χ


























Πίνακας 2.1 Σχέσεις υπηρεσιών - μηχανισμών

3. Κρυπτογράφηση στο Διαδίκτυο

3.1 Εισαγωγή

Με τη ραγδαία ανάπτυξη της χρήσης του Διαδικτύου παρουσιάστηκαν διάφορα προβλήματα ασφάλειας που αφορούν την εξασφάλιση της μυστικότητας και ακεραιότητας των αποθηκευμένων και διακινουμένων δεδομένων. Κάθε μεταφορά πληροφορίας, θα πρέπει βεβαίως να είναι ασφαλής και αξιόπιστη. Εάν οι χρήστες του Internet δεν έχουν την πεποίθηση ότι η επικοινωνία τους και τα δεδομένα που ανταλλάσσουν είναι ασφαλή από μη εξουσιοδοτημένη πρόσβαση ή παραποίηση, αυτό αποτελεί ανασταλτικό παράγοντα στην επιλογή τους να το χρησιμοποιήσουν ευρύτερα και ως μέσο διακίνησης των πιο κρίσιμων πληροφοριών τους (όπως τα ιατρικά τους δεδομένα, οικονομικής φύσεως στοιχεία κλπ.).

Σε ένα δίκτυο ανοικτό, όπως αυτό του παγκόσμιου Ιστού, τα μηνύματα είναι δυνατόν να υποκλαπούν και να μεταβληθούν, η εγκυρότητα των πληροφοριών είναι διαβλητή και τα προσωπικά δεδομένα μπορεί να καταχωρηθούν παράνομα. Ένα αποδεκτό επίπεδο ασφάλειας σε περιβάλλοντα ηλεκτρονικού εμπορίου (Laudon & Traver, 2014) μπορεί να προσφέρει η συνδυασμένη χρήση πολιτικών, διαδικασιών, και τεχνολογιών διασφάλισης συναλλαγών (transaction security). Είναι σημαντικό να διασφαλισθούν κατά τη μεταφορά τους οι πληροφορίες. Έτσι, η χρησιμότητα της κρυπτογράφησης έχει εύστοχα παρομοιαστεί με αυτή των τεθωρακισμένων φορτηγών που φροντίζουν την ασφαλή μεταφορά χρημάτων από τράπεζα σε τράπεζα. Με την ίδια λογική βέβαια, είναι φανερό ότι τα μέτρα προστασίας που λαμβάνονται κατά τη διακίνηση πολύτιμων αγαθών αποδεικνύονται άχρηστα αν στη συνέχεια αυτά τα αγαθά μετά τη παράδοσή τους εγκαταλειφθούν σε χώρους ελεύθερης πρόσβασης.

3.2 Κρυπτογραφία

Η κρυπτογραφία (cryptography) ως επιστήμη της ασφαλούς επικοινωνίας προσφέρει διάφορες τεχνικές για την κρυπτογράφηση και την αποκρυπτογράφηση μηνυμάτων. Ο ρόλος της κρυπτογραφίας αρχικά, με τις συμβατικές τεχνικές υποστήριξης της εμπιστευτικότητας των διακινούμενων πληροφοριών, είχε σημαντικές αλλά περιορισμένες εφαρμογές στη επιστήμη της Πληροφορικής. Όμως από το 1976, με τη δημοσίευση της θεμελιώδους εργασίας των Diffie και Hellman άρχισε μια νέα εποχή για την κρυπτογραφία, η εποχή της κρυπτογράφησης του δημόσιου κλειδιού. Έτσι, σήμερα η κρυπτογραφία μπορεί να ανταποκριθεί στις ανάγκες των ευρύτερα ανοικτών δικτύων με πλήθος εφαρμογών στη βιομηχανία, στις τράπεζες, στα νοσοκομεία κλπ. Στις επόμενες παραγράφους γίνεται μια σύντομη παρουσίαση των κρυπτογραφικών εννοιών και μηχανισμών που εφαρμόζονται για τη διασφάλιση των επικοινωνιών.

Αντικείμενο –- σημασία της κρυπτογραφίας

Η κρυπτογραφία είναι γνωστή από αρχαιοτάτων χρόνων και δείγματα χρήσης της μπορεί κανείς να συναντήσει σε πολλά αρχαία κείμενα. Χαρακτηριστικό παράδειγμα το μήνυμα του Ιουλίου Καίσαρα προς τον Κικέρωνα, στο οποίο χρησιμοποιήθηκε μία μέθοδος σύμφωνα με την οποία κάθε γράμμα του αρχικού μηνύματος αντικαθίσταται από το τρίτο κατά σειρά επόμενο γράμμα του λατινικού αλφαβήτου (Spillman, 2005). Έτσι, το όνομα του JULIUS CAESAR κωδικοποιείται στο ΜXOLXV FDHVOU. Η μέθοδος αυτή εκφράζεται στις μέρες μας από τη σχέση

c = m + k (mod 26)

όπου κάθε γράμμα του αρχικού κειμένου που κατέχει τη θέση m, αντικαθίσταται με ένα άλλο γράμμα που κατέχει τη θέση c (θέτοντας k=3 είναι ο αλγόριθμος του Καίσαρα).

Σε ένα λοιπόν σύστημα κρυπτογράφησης, το αρχικό μήνυμα (plaintext) μετασχηματίζεται σε κρυπτογράφημα (ciphertext), δηλαδή σε ένα μήνυμα το οποίο είναι μη-αναγνώσιμο από τρίτους (εκτός από τον επιδιωκόμενο παραλήπτη). Οι μετατροπές κρυπτογράφησης - αποκρυπτογράφησης (encryption-decryption) γίνονται με τη βοήθεια ενός αλγορίθμου κρυπτογράφησης (cipher) και ενός αρκετά μεγάλου αριθμού, του κλειδιού κρυπτογράφησης (key).

Αρχικά Στάδια της Κρυπτογραφίας

Κατ’ ουσία, η κρυπτογραφία είναι ένα αντικείμενο της μαθηματικής επιστήμης και ειδικότερα της περιοχής της θεωρίας αριθμών. Ένας από τους επιδιωκόμενους στόχους κατά την κρυπτογράφηση είναι να κρατηθεί σχετικά απλή η διαδικασία μετατροπής του αρχικού κειμένου σε κρυπτογράφημα. Από την άλλη μεριά, η αντίστροφη διαδικασία μετατροπής του κρυπτογραφήματος στο αρχικό κείμενο, θα πρέπει να καθίσταται ουσιαστικά αδύνατη. Μια τέτοια διαδικασία, είναι γνωστή στα Μαθηματικά ως “μονόδρομη συνάρτηση” (one-way function) και στηρίζεται στη δυσκολία επίλυσης συγκεκριμένων, επακριβώς διατυπωμένων μαθηματικών προβλημάτων. Οι ειδικοί στην κρυπτογραφία έχουν καταλήξει στο ότι προβλήματα από το πεδίο της θεωρίας ομάδων (group theory) συχνά εξυπηρετούν με τον καλύτερο τρόπο τις ανάγκες τους.

Η Κρυπτογραφία Σήμερα

Στην εποχή της τηλεπληροφορικής που τεράστιες ποσότητες ευαίσθητων πληροφοριών ανταλλάσσονται μεταξύ διαφόρων οργανισμών μέσω μη ασφαλών δημόσιων δικτύων, ο ρόλος της κρυπτογραφίας έχει διευρυνθεί για να ανταποκριθεί στη νέα πραγματικότητα. Ένας ολόκληρος επιστημονικός κλάδος, αυτός της κρυπτολογίας, έχει δημιουργηθεί με αντικείμενο τέτοιου είδους ζητήματα. Η κρυπτολογία περιλαμβάνει δύο επιμέρους κλάδους: την κρυπτογραφία και την κρυπτανάλυση. Στην κρυπτογραφία μελετώνται μέθοδοι εξασφάλισης της μυστικότητας και γνησιότητας των μηνυμάτων που ανταλλάσσονται μεταξύ δύο ή περισσοτέρων οντοτήτων. Αντίθετα στην κρυπτανάλυση μελετώνται μέθοδοι για την αποκάλυψη ή πλαστογράφηση των μηνυμάτων.

Το σχήμα 2.1 αποτυπώνει τη γενική μορφή ενός σύγχρονου κρυπτογραφικού συστήματος. Υποθέτουμε ότι ένας χρήστης Α και ένας χρήστης Β θέλουν να έχουν μια ασφαλή επικοινωνία. Αρχικά, πρέπει να διαλέξουν ή να ανταλλάξουν ένα ζεύγος κλειδιών (e,d). Στη συνέχεια, όταν ο Α (αποστολέας) θελήσει να στείλει μυστικά δεδομένα m στον Β (παραλήπτη), εφαρμόζεται μια μαθηματική συνάρτηση Ε, η οποία χρησιμοποιεί ως παράμετρο το κλειδί e, με σκοπό τον υπολογισμό του κρυπτογραφήματος c = Ε (m, e). Το κρυπτογράφημα c αποστέλλεται στον Β. Μόλις αυτός το λάβει, εφαρμόζεται μια αντίστροφη μαθηματική συνάρτηση D, η οποία χρησιμοποιεί το άλλο κλειδί d, με σκοπό τον υπολογισμό του m = D (c, d). Οπότε ανακτώνται τα αρχικά δεδομένα m.

Κάντε κλικ για επαναληψη της κινησης στην παρακάτω εικόνα:

Σχήμα 2.1: Γενική μορφή κρυπτογραφικού συστήματος

Ένα θεμελιώδες ερώτημα που προκύπτει είναι γιατί είναι απαραίτητο να εμπλέκονται στην όλη διαδικασία τα κλειδιά. Έχοντας εισάγει στις συναρτήσεις τα κλειδιά ως παραμέτρους, επιτυγχάνονται τα εξής: Αν κάποια στιγμή αποκαλυφθούν οι αλγόριθμοι, δεν είναι ανάγκη αυτοί να αντικατασταθούν, αλλάζοντας εκ βάθρων το κρυπτογραφικό σύστημα. Πρέπει απλά να αλλάξουν τα κλειδιά. Ακόμη, δεν απαιτούνται διαφορετικοί αλγόριθμοι για την παραγωγή διαφορετικών κρυπτογραφημάτων από το ίδιο αρχικό κείμενο. Αρκεί η χρήση διαφορετικών κλειδιών. Πραγματικά, τα κλειδιά έχουν το πιο κρίσιμο ρόλο στη λειτουργικότητα των κρυπτογραφικών αλγορίθμων, για αυτόν τον λόγο και αποτελεί ορθή και σώφρονα πρακτική κρυπτογραφίας η συχνή αλλαγή τους.

Η σύγχρονη κρυπτογραφία δε στηρίζεται στη μυστικότητα των αλγορίθμων της. Το αντίθετο μάλιστα, επιδιώκει τη δημοσιοποίηση τους βασιζόμενη σε ανοικτές προς όλους διαδικασίες αποτίμησης της ανθεκτικότητάς τους. Η χρήση κοινόχρηστων - δημόσιων αλγορίθμων (public algorithms), αποτελεί μια απαίτηση των πληροφοριακών συστημάτων της σημερινής πραγματικότητας, τα οποία καλούνται να υποστηρίξουν μια μεγάλη κοινότητα χρηστών με ενδιαφέροντα ανταγωνιστικά μεταξύ τους τις περισσότερες φορές (Gollmann, 2011). Οι δημόσιοι αλγόριθμοι εξελίσσονται με ανοικτές διαδικασίες αξιολόγησης (open evaluation) και συχνά βάσει εκ των πραγμάτων τυποποιήσεων προτύπων (de-facto standardization). Τα χαρακτηριστικά αυτά εξυπηρετούν μια βασική ανάγκη των σύγχρονων δικτυακών περιβαλλόντων: δίνουν τη δυνατότητα στο κάθε μέρος να κάνει με τα δικά του κριτήρια τις δικές του εκτιμήσεις περί της ανθεκτικότητας των αλγορίθμων κρυπτογράφησης και άρα του παρεχόμενου επιπέδου ασφάλειας. Έτσι διευκολύνονται όσα νέα μέρη θέλουν να συμμετάσχουν σε υπάρχουσες δικτυακές υποδομές, εφόσον μειώνονται οι δισταγμοί τους ως προς την υποστηριζόμενη ασφάλεια επικοινωνιών. Συνοψίζοντας, το κλειδί που χρησιμοποιείται σε μια κρυπτογραφική μετατροπή πρέπει ουσιαστικά να αποτελεί το μοναδικό αντικείμενο προστασίας, ενώ ο αλγόριθμος πρέπει να θεωρείται γνωστός. Αυτή η προσέγγιση είναι γνωστή στην κρυπτογραφία ως «“Αρχή του Kerckhoffs»”.

Βεβαίως μια σειρά από ζητήματα που αφορούν τα κλειδιά τίθενται: Που και πώς παράγονται; Που αποθηκεύονται; Πώς αποστέλλονται; Πώς και πότε ανακαλούνται ή αντικαθιστώνται; Όλα αυτά αποτελούν αντικείμενο της περιοχής που καλείται Διαχείριση Κλειδιών (Key Management). Στην ουσία, η κρυπτογραφία μπορεί να ειδωθεί ως ένας μηχανισμός μετατροπής των προβλημάτων ασφάλειας επικοινωνιών σε προβλήματα διαχείρισης κλειδιών, δηλαδή διαχείρισης με συγκεκριμένο τρόπο ορισμένων πολύ ευαίσθητων δεδομένων. Το πλεονέκτημα της κρυπτογραφίας είναι ότι το αρχικό πρόβλημα της εμπιστευτικότητας ενός μεγάλου μεγέθους κειμένου καταλήγει σε ένα πρόβλημα διακίνησης μικρών σε μέγεθος σχετικά κλειδιών, το οποίο και είναι ευκολότερο να αντιμετωπιστεί.

Για τους λόγους που ήδη αναφέρθηκαν, η ασφάλεια ενός κρυπτογραφικού συστήματος βασίζεται αποκλειστικά στην εξασφάλιση της μυστικότητας του κλειδιού. Ανάλογα με τον τρόπο που διασφαλίζεται αυτή η μυστικότητα του κλειδιού, τα κρυπτογραφικά συστήματα διακρίνονται σε δυο κατηγορίες. Στα συμμετρικά ή μυστικού κλειδιού συστήματα (secret key systems) και στα ασύμμετρα ή δημοσίου κλειδιού συστήματα (public key systems).

Κρυπτογραφία μυστικού κλειδιού

Η συμμετρική κρυπτογραφία, η οποία συγκεντρώνει τους παραδοσιακούς αλγόριθμους κρυπτογράφησης, βασίζεται στην ύπαρξη ενός μοναδικού κλειδιού, το οποίο χρησιμοποιείται τόσο για την κρυπτογράφηση όσο και για την αποκρυπτογράφηση των μηνυμάτων. Αναφερόμενοι στο σχήμα 2.1, σε ένα κρυπτογραφικό σύστημα μυστικού κλειδιού ισχύει d = e. Λόγω του ότι το κλειδί αυτό θα πρέπει να είναι γνωστό μόνο στον παραλήπτη και στον αποστολέα των μηνυμάτων, καλείται και κρυπτογραφία διαμοιραζόμενου μυστικού.

Κάντε κλικ για επαναληψη της κινησης στην παρακάτω εικόνα:

FirstGIF

Σχήμα 2.2: Συμμετρική κρυπτογραφία

Η συμμετρική κρυπτογραφία έχει ως μοναδικό σκοπό της τη διαφύλαξη της εμπιστευτικότητας των πληροφοριών και είναι κατάλληλη για μετατροπές μεγάλου όγκου δεδομένων επειδή οι υπολογισμοί που απαιτεί εκτελούνται πολύ γρήγορα. Το κύριο χαρακτηριστικό της είναι η ύπαρξη ενός ασφαλούς διαύλου επικοινωνίας για την αποστολή του μυστικού κλειδιού στον παραλήπτη (Σχήμα 2.2). Το Kerberos, είναι ένα πρωτόκολλο αυθεντικοποίησης μέσω δικτύου (network authentication protocol) το οποίο αναπτύχθηκε στο MIT και αποτελεί το πιο διαδεδομένο σύστημα αυθεντικοποίησης για εφαρμογές πελάτη-διακομιστή, που χρησιμοποιεί συμμετρική κρυπτογραφία, υποστηρίζοντας ασφαλή μεταφορά των μυστικών κλειδιών μέσω δημοσίων δικτύων.

Από τα πιο γνωστά συστήματα μυστικού κλειδιού είναι το DES (Data Encryption Standard). Ο αλγόριθμος DES αναπτύχθηκε από την ΙΒΜ στις αρχές της δεκαετίας του 1970 και από το 1977, το NIST (National Institute for Standards and Technology) των ΗΠΑ το υιοθέτησε ως το επίσημο πρότυπο κρυπτογράφησης ευαίσθητων πληροφοριών. Χρησιμοποιεί ένα κλειδί μεγέθους 56-bit. Το προς κρυπτογράφηση κείμενο εισάγεται σε τμήματα μεγέθους 64-bit και παράγεται ένα 64-bit κρυπτογράφημα. Παρά την πολυπλοκότητα της αρχιτεκτονικής του DES, o αλγόριθμος αυτός αποτελεί ουσιαστικά έναν κώδικα μόνο-αλφαβητικής αντικατάστασης. Ο DES θεωρείται πλέον ανασφαλής για πολλές εφαρμογές, και αυτό οφείλεται κυρίως στο μικρό μέγεθος του κλειδιού του (Mohapatra, 2000).

Εξέλιξη του DES αποτελεί ο Triple-DES, ο οποίος εκτελεί τρεις φορές την κρυπτογράφηση ή την αποκρυπτογράφηση του DES με αποτέλεσμα να κάνει καλύτερη κρυπτογράφηση από τον κλασικό DES. Με αυτόν τον τρόπο διασκεδάζονται οι ανησυχίες οι σχετικές με την ανθεκτικότητα του αλγορίθμου, λόγω του μικρού μεγέθους του κλειδιού. Το αρχικό κείμενο κρυπτογραφείται με τη χρήση ενός κλειδιού, στη συνέχεια αποκρυπτογραφείται με τη χρήση ενός δεύτερου και μετά κρυπτογραφείται με ένα τρίτο στον αποστολέα. Το αποτέλεσμα στέλνεται στον παραλήπτη που ακολουθεί την αντίστροφη διαδικασία. Πρώτα, αποκρυπτογραφεί με χρήση του τρίτου κλειδιού, στη συνέχεια κρυπτογραφεί με το δεύτερο και τέλος αποκρυπτογραφεί με το τρίτο. Ο Triple-DES αλγόριθμος μπορεί να υλοποιηθεί χρησιμοποιώντας δύο ή τρία κλειδιά μεγέθους 56-bit. Υπό τη μορφή αυτή του τριπλού DES, ο αλγόριθμος θεωρείται πρακτικά ασφαλής.

Από το 1997 είχαν ξεκινήσει από το NIST οι διαδικασίες προσδιορισμού του απογόνου του συστήματος DES, το οποίο καλείται AES (Advanced Encryption Standard), οι οποίες ολοκληρώθηκαν το 2001. Υιοθετήθηκε ο αλγόριθμος Rijnadel με δυνατότητες επιλογής κλειδιού μεγέθους  (key size) 128, 192, ή 256 bits, ενώ το προς κρυπτογράφηση τμήμα κειμένου (block size) εισάγεται σε τμήματα μεγέθους 128 bits. Ένας άλλος γνωστός αλγόριθμος συμμετρικής κρυπτογραφίας είναι ο Twofish, με ίδια χαρακτηριστικά μεγέθους κλειδιού και τμήματος κειμένου. Υστερεί ελαφρά σε ταχύτητα από τον AES, όταν το κλειδί είναι 128 bits, αλλά υπερτερεί από αυτόν όταν το κλειδί είναι 256 bits. Είναι αλγόριθμος που διατίθεται ελεύθερος προς χρήση σε όλους, και συμπεριλαμβάνεται στο πρότυπο OpenPGP (Ferguson et al., 2011). Αν και είναι εξέλιξη του διαδεδομένου Blowfish αλγορίθμου, δεν έχει ως τώρα καταφέρει να τον ξεπεράσει σε δημοφιλία.

Περιορισμοί Συμμετρικής Κρυπτογραφίας

Η συμμετρική κρυπτογραφία προσφέρει πολύ γρήγορους σε εκτέλεση αλγορίθμους. Έτσι είναι σε θέση να εγγυηθεί την εμπιστευτικότητα των επικοινωνιών, χωρίς να επιβαρύνει τη διαθεσιμότητα των συστημάτων. Όμως τα πλεονεκτήματά της σταματούν σε αυτό το σημείο. Δύο είναι τα βασικά της μειονεκτήματα:

  1. Το βασικό πρόβλημα στην παραδοσιακή κρυπτογραφία είναι αυτό της διανομής και της διαχείρισης γενικότερα των απαιτούμενων κλειδιών (key distribution-management). Σε μια επικοινωνία δυο μερών τα συναλλασσόμενα μέρη πρέπει, πριν αρχίσουν τις διαδικασίες αποστολής και λήψης μηνυμάτων, να χρησιμοποιήσουν ένα ασφαλές κανάλι για τον προσδιορισμό του κλειδιού που θα χρησιμοποιήσουν.
  2. Στα μεγάλα δίκτυα, ο αριθμός των διακινούμενων κλειδιών αυξάνεται γεωμετρικά λόγω του πλήθους των χρηστών (σε δίκτυο t πλήθους χρηστών, t(t-1)/2 ζεύγη χρηστών σχηματίζονται), αλλά και επειδή τα κλειδιά πρέπει να αλλάζουν συχνά προκειμένου να διατηρηθεί ένα υψηλό επίπεδο ασφάλειας. Πολλές φορές η διάρκεια ισχύος των κλειδιών περιορίζεται στο διάστημα μιας συνεδρίας επικοινωνίας (communication session). Τα συστήματα ασφαλούς ανταλλαγής κλειδιών, όπως το προαναφερθέν Kerberos, δεν είναι εύκολο να επεκταθούν για την εξυπηρέτηση μεγάλης κλίμακας χρηστών και απαιτούν επίσης πρόσθετες διαδικασίες ασφάλειας, όπως είναι η αποθήκευση των κλειδιών σε ένα κεντρικό ασφαλή διανομέα-εξυπηρετητή.

  3. Εκτός από την εμπιστευτικότητα των μηνυμάτων, υπάρχουν και άλλες απαιτήσεις ασφάλειας στα ανοικτά και μεγάλης κλίμακας δίκτυα, όπως το Internet, για τις οποίες η συμμετρική κρυπτογραφία δεν προσφέρει λύσεις. Στο προηγούμενο κεφάλαιο παρουσιάστηκαν αναλυτικά οι έννοιες της ακεραιότητας (αποτροπή μη-εξουσιοδοτημένων μεταβολών), της αυθεντικότητας (έλεγχος γνησιότητας της ταυτότητας ενός χρήστη) και της μη-απάρνησης (αποτροπή των αρνήσεων ενός μέρους να αναλάβει την ευθύνη των ενεργειών που διέπραξε). Στα ζητήματα αυτά, η σχετικά πρόσφατη κρυπτογραφία δημόσιου κλειδιού προσφέρει ικανοποιητικές διεξόδους.

Κρυπτογραφία Δημοσίου Κλειδιού

Τα συστήματα δημοσίου κλειδιού ή ασύμμετρης κρυπτογραφίας χρησιμοποιούν δύο ξεχωριστά αλλά συμπληρωματικά κλειδιά για τις διαδικασίες κρυπτογράφησης και αποκρυπτογράφησης. Το ένα από αυτά διατηρείται απόρρητο και καλείται ιδιωτικό (private) κλειδί, ενώ το άλλο γίνεται γνωστό στον κάθε ενδιαφερόμενο και καλείται δημόσιο (public). Παρόλο που τα δύο κλειδιά έχουν μια σύνθετη μαθηματική σχέση μεταξύ τους, η γνώση του δημόσιου κλειδιού δεν καθιστά εφικτό τον υπολογισμό του μυστικού ιδιωτικού κλειδιού. Η προστασία της εμπιστευτικότητας των μηνυμάτων επιτυγχάνεται ως εξής: Tο αρχικό μήνυμα κρυπτογραφείται από τον αποστολέα με το δημόσιο κλειδί του παραλήπτη και μόνο ο κάτοχος του ιδιωτικού κλειδιού, δηλαδή ο ίδιος ο παραλήπτης, μπορεί να το αποκρυπτογραφήσει.

Θεωρητικό υπόβαθρο

Η βασική θεωρητική ιδέα πίσω από την ασύμμετρη κρυπτογραφία είναι η έννοια των "μονόδρομων συναρτήσεων με καταπακτή" (trapdoor one-way functions). Οι συναρτήσεις αυτές είναι ειδικές περιπτώσεις των μονόδρομων συναρτήσεων που ήδη αναφέρθηκαν. Η επιπλέον ιδιότητα που τις κάνει διακριτές, είναι ότι όταν χρησιμοποιηθεί μια επιπλέον πληροφορία (η αποκαλούμενη καταπακτή), γίνεται εφικτός ο υπολογισμός της αντιστρόφου της. Τα ακόλουθα δυο προβλήματα θεωρούνται οι πιο πιθανοί υποψήφιοι για τη δημιουργία τέτοιων συναρτήσεων: •

  • Πρόβλημα παραγοντοποίησης (factorization problem): Η εύρεση δυο μεγάλων πρώτων αριθμών p και q οι οποίοι δίνουν ως γινόμενο έναν αριθμό n. Μια προσεπιλογή των πρώτων αριθμών καθιστά υπολογιστικά αδύνατη τη λύση του προβλήματος. Όμως, εάν είναι γνωστή η συνάρτηση phi(n) του Euler (δηλαδή το πλήθος των ακεραίων που είναι μικρότεροι από το n και οι οποίοι είναι «πρώτοι μεταξύ τους» με το n), τότε τα p και q μπορούν εύκολα να προσδιορισθούν. Η συνάρτηση phi(n) είναι η επιπρόσθετη πληροφορία, η καταπακτή. •
  • Πρόβλημα διακριτών λογαρίθμων (discrete logarithm problem): Η εύρεση του μοναδικού αριθμού i για τον οποίο ισχύει a = g^i (mod p), όπου p πολύ μεγάλος πρώτος αριθμός, 0<= i <= p-1 και g ειδικά επιλεγμένος αριθμός.

Κάντε κλικ για επαναληψη της κινησης στην παρακάτω εικόνα:

FirstGIF

Σχήμα 2.3: Ασύμμετρη κρυπτογραφία

Υλοποιήσεις δημοσίου κλειδιού

Η λογική της κρυπτογραφίας δημοσίου κλειδιού επινοήθηκε και διατυπώθηκε το 1976, σχεδόν ταυτόχρονα από τους Diffie και Hellman και από τον Merkle. Ένα χρόνο μετά, οι Rivest, Shamir και Addleman βασιζόμενοι σε αρχές της θεωρίας των πεπερασμένων πεδίων δημιούργησαν το κρυπτοσύστημα RSA (το όνομα προέκυψε από τα αρχικά γράμματα των ονομάτων τους), το οποίο αποτελεί την πρώτη υλοποίηση κρυπτογράφησης δημοσίου κλειδιού (Spillman, 2005). Η πρακτικότητα του συστήματος RSA βασίζεται στην αριθμητική υπολοίπων ακέραιας διαίρεσης (modulo) και η ανθεκτικότητά του οφείλεται στο προαναφερθέν πρόβλημα παραγοντοποίησης. Συγκεκριμένα, ενώ θεωρείται σχετικά απλό να βρεθούν δυο μεγάλοι πρώτοι αριθμοί (πχ. με 150 δεκαδικά ψηφία ) και να υπολογιστεί στη συνέχεια το γινόμενό τους, η παραγοντοποίηση αυτού του γινομένου (ειδικά όταν οι μεγάλοι πρώτοι αριθμοί είναι και ισχυροί ως προς κάποιες μαθηματικές ιδιότητες), δεν είναι εφικτή με τις δυνατότητες των υφιστάμενων αλγορίθμων και υπολογιστικών συστημάτων.

¶λλα γνωστά σχήματα δημόσιου κλειδιού είναι οι αλγόριθμοι των ελλειπτικών καμπυλών (Elliptic Curve Digital Signature Algorithms, ECDSA) και τα κρυπτογραφικά συστήματα El Gamal, των οποίων η ισχύς βασίζεται στα υψηλής δυσκολίας προβλήματα διακριτού λογαρίθμου.

Λειτουργικότητα ασύμμετρης κρυπτογραφίας

Κάθε αλγόριθμος δημοσίου κλειδιού έχει τις δικές του ιδιαιτερότητες, όλοι όμως χρησιμοποιούν ζεύγος κλειδιών και βασίζονται στο ότι όποιο από τα κλειδιά δημοσιευθεί, δε διακυβεύει τη μυστικότητα του άλλου κλειδιού. Οι χρήστες λοιπόν του Διαδικτύου μπορούν ελεύθερα να συμπεριλαμβάνουν στις ιστοσελίδες τους ή σε ειδικούς καταλόγους-ευρετήρια (directories) τα δημόσια κλειδιά τους, οπότε και παύει να υφίσταται το βασικό πρόβλημα διαχείρισης των κλειδιών της κρυπτογραφίας μυστικού κλειδιού. Τα δημόσια κλειδιά δε χρειάζονται για τη διανομή τους έναν ασφαλή δίαυλο. Δεν τίθεται ζήτημα εμπιστευτικότητας στα κανάλια διανομής των δημοσίων κλειδιών, αφού αυτά είναι προσπελάσιμα και ανοικτά προς όλους τους ενδιαφερόμενους. Όμως, χρειάζονται για τη διανομή τους έναν αξιόπιστο δίαυλο (σχήμα 2.3), δηλαδή ένα μέσο που θα υποστηρίζει την ακεραιότητά τους. Οι μικρότερες απαιτήσεις ασφάλειας για τη διανομή των κλειδιών της, κάνουν την κρυπτογραφία δημοσίου κλειδιού ιδανική για ένα εκ φύσεως δημόσιο δίκτυο, το Internet, στο οποίο πολλές φορές χρειάζεται να αποκαθίσταται η εμπιστοσύνη ανάμεσα σε δυο απομακρυσμένους χρήστες χωρίς αυτοί να συναντηθούν ή χωρίς να μεσολαβήσει κάποιο έμπιστο τρίτο μέρος.

Οι αρχές της κρυπτογράφησης δημοσίου κλειδιού αποσαφηνίζονται από τις ακόλουθες αναλογίες: Η πρώτη, παρομοιάζει την ασύμμετρη κρυπτογραφία ως ένα προσωπικό γραμματοκιβώτιο, στο οποίο όλοι βέβαια μπορούν να εναποθέσουν γράμματα αλλά μόνο ο ιδιοκτήτης του γραμματοκιβώτιου μπορεί να τα παραλάβει, εφόσον μόνον αυτός κατέχει το κλειδί του. Το σημαντικό στην περίπτωση αυτή είναι ότι ο αποστολέας πρέπει να είναι σίγουρος για το όνομα του ιδιοκτήτη του γραμματοκιβώτιου. Η δεύτερη αναλογία στηρίζεται στα λεξικά και δίνει έμφαση στην ισοδυναμία δημόσιων και ιδιωτικών κλειδιών, καθώς επίσης και στη δυσκολία υπολογισμού του ιδιωτικού κλειδιού από το δημόσιο. Θεωρούμε το αρχικό κείμενο ως ένα κείμενο γραμμένο στα Ελληνικά και το κρυπτογράφημα ως τη μετάφρασή του στην Ιταλική γλώσσα. Η κρυπτογράφηση απαιτεί ένα δημόσιο κλειδί, δηλαδή ένα λεξικό Ελληνό-Ιταλικό. Η αποκρυπτογράφηση χρειάζεται το ιδιωτικό κλειδί, δηλαδή αναλογικά ένα Ιταλό-Ελληνικό λεξικό. Έχοντας κάποιος (μη-γνωρίζων Ιταλικά) το Ελληνό-Ιταλικό λεξικό, είναι πάρα πολύ δύσκολο να μεταφράσει ένα κείμενο της Ιταλικής. Και η αναλογία προχωράει ακόμη περισσότερο στο ότι ενώ θεωρητικά υπάρχει τρόπος εύρεσης του ιδιωτικού κλειδιού από το δημόσιο, η απαιτούμενη προσπάθεια κάνει το εγχείρημα πάρα πολύ δύσκολο και ασύμφορο.

Εφαρμογές Κρυπτογραφίας Δημοσίου Κλειδιού

Η ασύμμετρη κρυπτογραφία αποτελεί τεχνολογικά τον ακρογωνιαίο λίθο σε πολλές εφαρμογές και μηχανισμούς ασφάλειας στο Διαδίκτυο, όπως: •

  • Υποδομές Πιστοποίησης, οι οποίες διαχειρίζονται ψηφιακά πιστοποιητικά έμπιστων τρίτων φορέων, με σκοπό την αναγνώριση και πιστοποίηση της ταυτότητας των χρηστών (πιστοποιητικά ταυτότητας), αλλά και τον έλεγχο των εξουσιοδοτήσεών τους (πιστοποιητικά χαρακτηριστικών). •
  • Ασφαλής παρουσίαση ιστοσελίδων αλλά και δικτυακών αγορών, βάσει του πρωτοκόλλου SSL (Secure Sockets Layer) αλλά και του πρωτοκόλλου TLS (Transport Layer Security) της IETF (Internet Engineering Task Force). •
  • Ασφαλείς συναλλαγές μέσω πιστωτικών καρτών, βάσει του πρωτοκόλλου 3-D Secure των Visa και Mastercard. •
  • Ασφαλής ηλεκτρονική αλληλογραφία, βάσει του πρωτοκόλλου S/MIME (Secure / Multipurpose Internet Mail Extensions) της IETF.

Όλα τα προηγούμενα στηρίζονται στους ακόλουθους τρόπους εκμετάλλευσης της κρυπτογραφίας δημοσίου κλειδιού.

Διανομή Μυστικού Κλειδιού– - Ψηφιακοί Φάκελοι

Η ανταλλαγή κλειδιών (key exchange) ήταν η πρώτη χρονολογικά εφαρμογή της κρυπτογραφίας δημοσίου κλειδιού. Για αυτόν τον λόγο άλλωστε αναπτύχθηκε, για την αντιμετώπιση του μεγαλύτερου προβλήματος της κρυπτογραφίας μυστικού κλειδιού, δηλαδή του τρόπου που θα γίνει η μετάδοση του κοινού μυστικού κλειδιού με το οποίο θα γίνει η επικοινωνία. Χρησιμοποιείται η ακόλουθη διαδικασία:

1) Ο αποστολέας καθορίζει το μυστικό κλειδί k που θα χρησιμοποιηθεί κατά την κρυπτογράφηση μυστικού κλειδιού. Για λόγους επιπρόσθετης ασφάλειας το κλειδί k είναι ένας τυχαία παραγόμενος αριθμός, ο οποίος χρησιμοποιείται μόνο για μια φορά και μόλις η επικοινωνία τελειώσει καταστρέφεται ολοσχερώς. Το κλειδί k σε αυτήν την περίπτωση καλείται κλειδί μηνύματος (message key) ή κλειδί συνεδρίας (session key).

2) Ο αποστολέας κρυπτογραφεί το κλειδί συνεδρίας k, χρησιμοποιώντας το δημόσιο κλειδί e του παραλήπτη και του το αποστέλλει ως πληροφορία z.

3) Ο παραλήπτης μόλις παραλάβει το z, το αποκρυπτογραφεί μέσω του ιδιωτικού του κλειδιού d και έτσι ανακτά το κλειδί k.

Με αυτόν τον τρόπο διαφυλάσσεται η εμπιστευτικότητα του κλειδιού μιας συμμετρικής κρυπτογράφησης. Το ερώτημα που αβίαστα προκύπτει είναι γιατί να εμπλέκεται στην όλη διαδικασία μια κρυπτογράφηση μυστικού κλειδιού. Δηλαδή, γιατί να είναι αναγκαίο το πρώτο βήμα της προηγούμενης διαδικασίας και να μην αρκεί στα υπόλοιπα βήματα να κρυπτογραφείται - αποκρυπτογραφείται όχι κάποιο κλειδί αλλά ολόκληρο το υπό προστασία μήνυμα. Ο λόγος βρίσκεται στα εξής μειονεκτήματα της κρυπτογραφίας δημοσίου κλειδιού: •

  • Απαιτούνται μεγαλύτερου μεγέθους κλειδιά: Σήμερα κλειδιά μήκους από 2048 bits και πάνω, θεωρούνται ασφαλή. Χρειάζονται αιώνες για να σπάσουν με τη σύγχρονη τεχνολογία. Ένα όμως συμμετρικό σύστημα όπως το ΑES ή το Twofish χρειάζεται κλειδιά πολύ μικρότερου μεγέθους (256 bits) για να παρέχει το ίδιο επίπεδο ασφάλειας. •
  • Παρουσιάζει πολύ μεγαλύτερη υπολογιστική πολυπλοκότητα από την αντίστοιχη του μυστικού κλειδιού, για αυτό και είναι πιο αργή. Τα συστήματα μυστικού κλειδιού είναι 100-200 φορές γρηγορότερα από κάθε σύστημα δημόσιου κλειδιού. Ακόμη και μέσω βελτιστοποιήσεων, οι ασύμμετροι αλγόριθμοι είναι δυο με τρεις τάξεις μεγέθους πιο αργοί από τους συμμετρικούς.

Η χαμηλή λοιπόν γενικά απόδοση τους οδηγεί σε υβριδικά κρυπτογραφικά συστήματα. Το σχήμα κρυπτογράφησης δημόσιου κλειδιού εξυπηρετεί τη διανομή μυστικών κλειδιών, τα οποία στη συνέχεια χρησιμοποιούνται από γρήγορους συμμετρικούς αλγόριθμους. Έτσι φτάνουμε στην έννοια του ψηφιακού φακέλου (digital envelope), ο οποίος περιέχει ένα μυστικό κλειδί k συμμετρικής κρυπτογραφίας, κρυπτογραφημένο ασύμμετρα βάσει του δημοσίου κλειδιού e του παραλήπτη. Ο ψηφιακός φάκελος συνοδεύει το μήνυμα m που κρυπτογραφήθηκε συμμετρικά βάσει του συγκεκριμένου κλειδιού k. Το ακόλουθο σχήμα 2.4, παρουσιάζει την όλη διαδικασία.

Επιλέξτε μια από τις τρεις καρτέλες

Σχήμα 2.4: Ψηφιακός φάκελος

Τέτοιας μορφής διευθέτηση προτείνεται από το πρωτόκολλο SSL. Ένα άλλο παράδειγμα συνδυασμού συμμετρικών και ασύμμετρων αλγορίθμων αποτελεί το πρότυπο OpenPGP.

Έλεγχος Αυθεντικότητας

Η κρυπτογραφία δημοσίου κλειδιού μπορεί να χρησιμοποιηθεί για την επιβεβαίωση της ταυτότητας μιας οντότητας (authentication), αρκεί να χρησιμοποιηθούν τα κλειδιά με αντίστροφο τρόπο. Δηλαδή το ιδιωτικό κλειδί να κάνει σε κάποια φάση της επικοινωνίας κρυπτογράφηση και το δημόσιο να αναλάβει την αποκρυπτογράφηση. Ως παράδειγμα, το πρωτόκολλο SSL χρησιμοποιεί τεχνικές δημοσίου κλειδιού για τον έλεγχο αυθεντικότητας, με τον ακόλουθο τρόπο. Υποθέτουμε ότι το συναλλασσόμενο μέρος Α θέλει να επιβεβαιώσει την ταυτότητα του μέρους Β. Τότε, σύμφωνα και με το σχήμα 2.5:

Κάντε κλικ στα εικονίδια του σχήματος για επεξήγηση

shape1

Σχήμα 2.5: Πιστοποίηση ταυτότητας στην ασύμμετρη κρυπτογραφία

1) Το μέρος Α (αποστολέας) στέλνει ένα τυχαίο μήνυμα r, το οποίο καλείται πρόκληση (challenge) στο μέρος Β (παραλήπτης).

2) Το Β κρυπτογραφεί το r, βάσει του ιδιωτικού του κλειδιού e και το κρυπτογράφημα c αποστέλλεται πίσω στο A.

3) Το Α είναι σε θέση να αποκρυπτογραφήσει το c, βάσει του δημόσιου κλειδιού d του μέρους Β. Συγκρίνοντας το προϊόν της αποκρυπτογράφησης p με τo αρχικό μήνυμα r, αποφαίνεται για την ταυτότητα του Β.

Επειδή το ιδιωτικό κλειδί της υπό εξακρίβωση οντότητας (άτομο, μηχάνημα, διεργασία κλπ.) το γνωρίζει μόνον η ίδια, μόνον αυτή θα μπορούσε να κρυπτογραφήσει ένα μήνυμα που αποκρυπτογραφείται με το δημόσιο κλειδί της. Η διαδικασία αυτή δε διασφαλίζει την εμπιστευτικότητα των δεδομένων, αφού οποιοσδήποτε θα μπορούσε να αποκρυπτογραφήσει το μήνυμα μέσω του κοινώς γνωστού δημόσιου κλειδιού. Για αυτό και το μήνυμα που χρησιμοποιείται είναι κάτι τυχαίο και η συγκεκριμένη χρήση των τεχνικών δημοσίου κλειδιού αποτελεί απλά μια φάση η οποία συνδυάζεται με επιπλέον διαδικασίες (όπως αυτές που αναφέρθηκαν σε προηγούμενες παραγράφους ή που θα αναφερθούν στη συνέχεια).

Ψηφιακές Υπογραφές

Για την απόδειξη της γνησιότητας ενός εγγράφου, χρησιμοποιούνται οι συμβατικές υπογραφές. Ειδικότερα, η υπογραφή αποτελεί μαρτυρία της εγκυρότητας του υπογεγραμμένου εγγράφου έτσι ώστε ο υπογράφων να μη μπορεί να το απαρνηθεί. Στο ανοικτό περιβάλλον του Διαδικτύου, καθίσταται αναγκαία η χρησιμοποίηση ενός ηλεκτρονικού ισοδύναμου της συμβατικής υπογραφής, δηλαδή μιας ηλεκτρονικής υπογραφής. Ο μηχανισμός της ηλεκτρονικής υπογραφής θα πρέπει να παρέχει απόδειξη της προέλευσης, της γνησιότητας και της ακεραιότητας των ανταλλασσομένων μηνυμάτων. Επιπλέον, η ηλεκτρονική υπογραφή πρέπει να δημιουργείται και να αναγνωρίζεται εύκολα, ενώ δύσκολα να πλαστογραφείται.

Οι ηλεκτρονικές υπογραφές που βασίζονται στην κρυπτογραφία δημοσίου κλειδιού, ονομάζονται ψηφιακές υπογραφές (digital signatures). Υπάρχουν ψηφιακές υπογραφές που χρησιμοποιούν τον αλγόριθμο κρυπτογράφησης RSA, αλλά ως πρότυπο για τις ψηφιακές υπογραφές από το NIST έχει υιοθετηθεί ο DSA (Digital Signature Algorithm), ο οποίος βασίζεται στο σύστημα ψηφιακής υπογραφής El Gamal. Βασικό του χαρακτηριστικό είναι ότι το μήκος της υπογραφής ενός μηνύματος είναι διπλάσιο του μήκους του μηνύματος, σε αντίθεση με τον αλγόριθμο RSA όπου τα μήκη είναι ίσα.

Ακεραιότητα δεδομένων

Η ψηφιακή υπογραφή, ως ένα είδος ηλεκτρονικής υπογραφής, είναι μία συμβολοσειρά από bits και εξαρτάται πάντοτε από το μήνυμα που συνοδεύει. Ο λόγος αυτής της εξάρτησης είναι η αποτροπή απόσπασης και αντιγραφής τους από τα μηνύματα που συνοδεύουν. Διότι, όσο δύσκολη και αν είναι η διαδικασία δημιουργίας μιας ψηφιακής υπογραφής, εάν δε “δένεται” κατάλληλα με το μήνυμα, είναι εύκολη η προσθήκη της σε οποιοδήποτε άλλο μήνυμα. Η “σύνδεση” της ψηφιακής υπογραφής με το περιεχόμενο του μηνύματος που υπογράφει, είναι υπεύθυνη για τη δυνατότητα υποστήριξης της ακεραιότητας των δεδομένων (data integrity), δηλαδή της διασφάλισης ότι δεν έχουν παραποιηθεί τα δεδομένα μέχρι να φτάσουν από τον αποστολέα στον παραλήπτη.

Υπάρχουν διάφοροι αλγόριθμοι που ελέγχουν την ακεραιότητα των δεδομένων που αποστέλλονται, οι οποίοι καλούνται αλγόριθμοι σύνοψης μηνύματος (message digest). Οι συναρτήσεις σύνοψης χρησιμοποιούνται για τον υπολογισμό της “περίληψης” των δεδομένων, ως πρώτο βήμα για τη δημιουργία ψηφιακής υπογραφής. Εφαρμόζουν μια μονόδρομη συνάρτηση κατατεμαχισμού (one way hash function) σε οποιουδήποτε μεγέθους μήνυμα και παράγουν ένα σταθερό αριθμό από bits που αποτελεί τη “περίληψη” του μηνύματος, η οποία είναι και μοναδική για κάθε μήνυμα. Η ιδέα βασίζεται στο γεγονός ότι πρέπει μία σύνοψη μηνύματος να αναπαριστά "συνοπτικά" τα αρχικά δεδομένα από τα οποία παράχθηκε, καθιστώντας την έτσι ψηφιακό αποτύπωμα των μεγαλύτερου μεγέθους δεδομένων. Προφανώς η ταχύτητα υπολογισμού των ψηφιακών υπογραφών είναι πολύ μεγαλύτερη αν χρησιμοποιούνται συνόψεις, παρά αν κρυπτογραφείται το ίδιο το κείμενο.

Για την επιλογή τους ως συναρτήσεων σύνοψης, αυτές πρέπει να διαθέτουν συγκεκριμένες ιδιότητες. Συνοπτικά οι σπουδαιότερες ιδιότητες για μία συνάρτηση σύνοψης Η είναι (Γκρίτζαλης & Γεωργιάδης, 1997):

  1. Η συνάρτηση Η πρέπει εύκολα και γρήγορα, με υλοποιήσιμες τεχνικές λογισμικού – υλικού, να μπορεί να εφαρμόζεται σε δεδομένα οποιουδήποτε μεγέθους και να μπορεί να παράγει πάντοτε αποτέλεσμα συγκεκριμένου μεγέθους.
  2. Preimage resistance: Για οποιοδήποτε μήνυμα (σύνοψη) m, πρέπει να είναι υπολογιστικά ανέφικτο (computatiοnally infeasible) να αποκαλυφθεί x για το οποίο ισχύει Η(x) = m.
  3. 2nd preimage resistance: Για κάθε μήνυμα x πρέπει να είναι υπολογιστικά ανέφικτο να βρεθεί y, έτσι ώστε να ισχύει:

    αν y != x => Η(y) = Η(x)

  4. Collision resistance: Πρέπει να είναι υπολογιστικά ανέφικτο να βρεθεί ζεύγος (x, y) για το οποίο να ισχύει:

    Η(x) = Η(y)

Η πρώτη ιδιότητα αποτελεί τη βασική προϋπόθεση για την πρακτική αξιοποίηση μιας συνάρτησης σύνοψης. Η δεύτερη ιδιότητα εξασφαλίζει μονόδρομη συνάρτηση σύνοψης. Η τρίτη ιδιότητα εξασφαλίζει ότι δεν μπορεί να βρεθεί άλλο μήνυμα. το οποίο να παράγει ίδια σύνοψη με αυτή που παρήγαγε ένα δοσμένο μήνυμα. Συναρτήσεις που ικανοποιούν τις τρεις πρώτες ιδιότητες χαρακτηρίζονται ως ασθενείς (weak) συναρτήσεις σύνοψης. Αν ικανοποιείται και η τέταρτη ιδιότητα της μη-ύπαρξης συγκρούσεων, τότε οι συναρτήσεις χαρακτηρίζονται ισχυρές (strong), αφού αντιμετωπίζουν και μια έξυπνη κατηγορία επιθέσεων, γνωστή στη βιβλιογραφία (Spillman, 2005) ως επίθεση τύπου γενεθλίων (birthday attack).

Οι πιο διαδεδομένοι κρυπτογραφικοί αλγόριθμοι κατατεμαχισμού, παράγουν συνόψεις μεγέθους τουλάχιστον 128 bits, ενώ η πιθανότητα διαφορετικών δεδομένων να δημιουργήσουν την ίδια σύνοψη είναι μόλις 1/ (2^128). Τα σημαντικότερα παραδείγματα μονόδρομων συναρτήσεων σύνοψης αποτελούν: ο ΜD5 που σχεδιάστηκε από τον Rivest (128-bits), ο οποίος όμως θεωρείται πλέον ανασφαλής λόγω επιτυχημένης επίθεσης το 2008, και οι Secure Hash Algοrithm 1 (SHΑ-1) από το NIST (160 bits). Και ο SHA-1 θεωρείται ανασφαλής γιατί ερευνητές έδειξαν ότι είναι ζήτημα λίγων ετών να 'σπάσει', για αυτό χρησιμοποιούνται παραλλαγές του με 224/256 bits (SHA-2), ενώ το 2014 αναμενόταν από το NIST η υιοθέτηση ως πρότυπο ενός αντικαταστάτη του SHA-2: το επερχόμενο SHA-3 στηρίζεται σε διαφορετικό αλγόριθμο, ο οποίος ήδη έχει επικρατήσει σε σχετικό πρόσφατο διαγωνισμό.

Δημιουργία Ψηφιακών Υπογραφών

Ένα ασφαλές σύστημα παροχής ψηφιακών υπογραφών αποτελείται από δύο μέρη. Στον μεν αποστολέα πραγματοποιείται η μέθοδος υπογραφής ενός κειμένου με "ορθό" τρόπο, στον δε παραλήπτη πραγματοποιείται η μέθοδος επαλήθευσης αν η ψηφιακή υπογραφή παράχθηκε από αυτόν που πραγματικά αντιπροσωπεύει. Η ψηφιακή υπογραφή δημιουργείται από ένα ιδιωτικό κλειδί. Ένα δημόσιο κλειδί χρησιμοποιείται για να επαληθευθεί ότι η υπογραφή δημιουργήθηκε χρησιμοποιώντας το αντίστοιχο ιδιωτικό κλειδί. Η ψηφιακή υπογραφή δημιουργείται κατά τέτοιο τρόπο ώστε να είναι αδύνατο να παραχθεί και πάλι η ίδια ψηφιακή υπογραφή χωρίς τη γνώση του ιδιωτικού κλειδιού.

 

 

 

Σχήμα 2.6: Ψηφιακή υπογραφή

Για να δημιουργηθεί μία ψηφιακή υπογραφή (σχήμα 2.6), απαιτούνται δύο βήματα: •

  • Ο αποστολέας υπολογίζει με χρήση ειδικού λογισμικού μία σύνοψη g του μηνύματος m. •
  • Κρυπτογραφείται η σύνοψη που προέκυψε (ενδεχομένως μαζί με στοιχεία του αποστολέα, τον τόπο και τον χρόνο υπογραφής), χρησιμοποιώντας το ιδιωτικό κλειδί του αποστολέα e και όχι το δημόσιο κλειδί του παραλήπτη. Η ασύμμετρα κρυπτογραφημένη σύνοψη μαζί με την πληροφορία προσδιορισμού του αλγόριθμου σύνοψης, αποτελεί την ψηφιακή υπογραφή s του μηνύματος. Στη συνέχεια, αυτή αποστέλλεται μαζί με το αρχικό μήνυμα στον παραλήπτη.

Έχουμε ήδη αναφέρει σε προηγούμενη παράγραφο, ότι ο έλεγχος αυθεντικότητας χρησιμοποιεί το ζεύγος των κλειδιών κατ' αυτόν τον τρόπο. Όμως εδώ, στις ψηφιακές υπογραφές, το ιδιωτικό κλειδί δε χρησιμοποιείται για την κρυπτογράφηση του ίδιου του κειμένου, αλλά μόνο για τη δημιουργία της ψηφιακής υπογραφής, δηλαδή την κρυπτογράφηση της σύνοψης, η οποία επισυνάπτεται στα δεδομένα που αποστέλλονται. Η κρυπτογράφηση λοιπόν με σκοπό τη δημιουργία ψηφιακής υπογραφής αφήνει τα μεταδιδόμενα δεδομένα άθικτα.

Ας σημειωθεί ότι τα δεδομένα αυτά μπορεί να είναι είτε κρυπτογραφημένα, είτε μη κρυπτογραφημένα, ανάλογα με το επίπεδο εμπιστευτικότητας που είναι επιθυμητό, και το οποίο βέβαια δεν έχει σχέση με τους καθ' εαυτού μηχανισμούς των ψηφιακών υπογραφών. Ανεξαρτήτως πάντως της κρυπτογράφησης ή μη των δεδομένων, ο παραλήπτης μπορεί να συμπεράνει αν αυτά έχουν τροποποιηθεί και από πού αυτά προέρχονται, με τη βοήθεια του δημόσιου κλειδιού του αποστολέα. Συνολικά, η επικύρωση της υπογραφής (σχήμα 2.6), χρειάζεται τρία βήματα: •

  • Το δημόσιο κλειδί d του αποστολέα χρησιμοποιείται για την αποκρυπτογράφηση της ψηφιακής υπογραφής s και κατά συνέπεια της ανάκτησης της σύνοψης (έστω f) του αρχικού κειμένου. •
  • Χρησιμοποιώντας το κείμενο m που έφθασε στον παραλήπτη, με χρήση του σχετικού λογισμικού που υλοποιεί την ίδια συνάρτηση κατατεμαχισμού, παράγεται η σύνοψή του g. •
  • Συγκρίνονται οι δύο συνόψεις g και f, δηλαδή αυτή που δημιουργήθηκε από το αφιχθέν κείμενο στο δεύτερο βήμα, με αυτή που αποκρυπτογραφήθηκε στο πρώτο βήμα.

Οποιαδήποτε μεταβολή συνέβη στα δεδομένα, θα έχει ως αποτέλεσμα τη διαφοροποίηση των συνόψεων. Με τον τρόπο αυτόν ο παραλήπτης μπορεί να επιβεβαιώσει: •

  • ότι τα δεδομένα δεν έχουν μεταβληθεί κατά τη διάρκεια της επικοινωνίας (integrity) •
  • ότι το δημόσιο και το ιδιωτικό κλειδί του αποστολέα είναι πράγματι ορθό ζεύγος.

Ο παραλήπτης της ψηφιακής υπογραφής πρέπει επίσης λογικά να είναι βέβαιος για την ταυτότητα του αποστολέα (authentication). Επιπλέον, δεν κινδυνεύει να αντιμετωπίσει άρνηση ανάληψης ευθύνης (non-repudiation) από τον αποστολέα, αφού η ψηφιακή υπογραφή είναι κρυπτογραφημένη με το ιδιωτικό κλειδί του. Ή μήπως όχι; Η αλήθεια είναι ότι η επαλήθευση της οντότητας αποστολής και η ακεραιότητα των δεδομένων, αν και πολύ σημαντικά στοιχεία, δεν αποδεικνύουν υποχρεωτικά την ταυτότητα του ιδιοκτήτη του δημόσιου κλειδιού. Πώς μπορεί ο παραλήπτης ενός μηνύματος να είναι βέβαιος ότι ο αποστολέας είναι αυτός που ισχυρίζεται ότι είναι; Το δημόσιο κλειδί του αποστολέα μπορεί να ανακληθεί από μια ιστοσελίδα ή από ένα σχετικό ευρετήριο, αλλά πόσο αξιόπιστο μπορεί να είναι αυτό; Καθένας θα μπορούσε να ζητήσει την έκδοση ενός ζεύγους κλειδιού υπό άλλο όνομα και στη συνέχεια να ανακοινώσει ότι το τάδε δημόσιο κλειδί είναι δικό του. Ο παραλήπτης θα πρέπει να διαθέτει περισσότερες και πραγματικά αξιόπιστες πληροφορίες για τον ιδιοκτήτη του κλειδιού. Η σημαντικότερη μέθοδος στην κατεύθυνση αυτή βασίζεται στην ύπαρξη Έμπιστων Τρίτων Φορέων - ΕΤΦ (Trusted Third Parties, TTP), οι οποίοι και παρέχουν ηλεκτρονικά (ή ψηφιακά) πιστοποιητικά - (certificates) (Gritzalis, 1999; Ferguson et al., 2011). Τα σχετικά ζητήματα, λόγω της σημαντικότητάς τους, θα αναλυθούν διεξοδικά σε επόμενη παράγραφο.

Διαχείριση των Κλειδιών

Αρκετά συστήματα κρυπτογράφησης έχουν την ιδιότητα ότι τόσο το δημόσιο κλειδί, όσο και το ιδιωτικό, μπορούν να χρησιμοποιηθούν και για την κρυπτογράφηση και για την αποκρυπτογράφηση. Κατά συνέπεια, το ίδιο ζεύγος κλειδιών θα μπορούσε να χρησιμοποιηθεί και για την εμπιστευτικότητα (κρυπτογράφηση) των μηνυμάτων και για τις ψηφιακές υπογραφές τους. Η πρακτική αυτή όμως δημιουργεί προβλήματα στη διαχείριση των κλειδιών. Όταν το ζεύγος κλειδιών χρησιμοποιείται για ψηφιακές υπογραφές, το ιδιωτικό κλειδί θα πρέπει να καταστρέφεται μετά το τέλος της ενεργούς ζωής του, καθώς αν ποτέ αυτό ανακαλυφθεί, μπορεί να χρησιμοποιηθεί για πλαστογράφηση υπογραφών. Αντίθετα, αν χρησιμοποιείται για κρυπτογράφηση θα πρέπει να φυλάσσεται για όσο το δυνατόν περισσότερο, καθώς η απώλειά του θα έχει ως αποτέλεσμα να μη γίνεται αποκρυπτογράφηση πληροφοριών που έγιναν με το δημόσιο ανάλογό του. Γι' αυτό στην πράξη υπάρχουν δύο ζεύγη κλειδιών: ένα για τις υπογραφές και ένα για την κρυπτογράφηση.

4. Υποδομές Πιστοποίησης

4.1 Εισαγωγή

Η κρυπτογράφηση δημόσιου κλειδιού από μόνη της δεν μπορεί να εγγυηθεί την ασφαλή διακίνηση πληροφοριών σε ένα ανοικτό δίκτυο όπως είναι το Internet. Στο σημαντικότατο ζήτημα της αυθεντικοποίησης των επικοινωνούντων μερών, το μόνο που πραγματικά διασφαλίζεται είναι ότι το δημόσιο και το ιδιωτικό κλειδί του αποστολέα είναι συμπληρωματικό ζευγάρι κλειδιών. Δεν υπάρχει καμιά εγγύηση για το ποιος είναι αυτός που κρατά το ιδιωτικό κλειδί. Ο παραλήπτης χρειάζεται σίγουρα κάποιες πιο αξιόπιστες πληροφορίες σχετικά με την ταυτότητα του ιδιοκτήτη του κλειδιού. Τη λύση μπορεί να δώσει η λειτουργία κοινώς αποδεκτών φορέων που είναι υπεύθυνοι για τη διαχείριση των δημόσιων κλειδιών. Ένας τέτοιος φορέας θα πρέπει να είναι σε θέση να διασφαλίζει ότι ένα συγκεκριμένο δημόσιο κλειδί ανήκει σε ένα συγκεκριμένο άτομο, οργανισμό ή οντότητα και πουθενά αλλού.

Η διαδικασία αυτή της αντιστοίχισης και δέσμευσης ενός δημόσιου κλειδιού σε μια οντότητα, καλείται πιστοποίηση (certification). Κατ' αναλογία, καλούνται πιστοποιητικά δημόσιου κλειδιού (public key certificates) ή απλά πιστοποιητικά, τα ηλεκτρονικά έγγραφα που χρησιμοποιούνται για την αναγνώριση μιας οντότητας και τη συσχέτισή της με ένα δημόσιο κλειδί. Μια Υποδομή Δημόσιου Κλειδιού (ΥΔΚ), στην απλούστερή της μορφή, είναι ένα τέτοιο σύστημα δημοσιοποίησης δημόσιων κλειδιών, το οποίο ως βασική του λειτουργία έχει την πιστοποίηση όσων επικοινωνούν μέσω Internet.

4.2 Υποδομή Δημόσιου Κλειδιού

Η μέριμνα για τις υπηρεσίες πιστοποίησης είναι ένας σχετικά νέος τομέας υπηρεσιών. Μια ΥΔΚ (Public Key Infrastructure, PKI) δεν εξαντλείται στην αντιπροσώπευση νόμιμων προσβάσεων στα δημόσια κλειδιά κρυπτογράφησης που απαιτούνται για τη χρήση των ψηφιακών υπογραφών και των ψηφιακών φακέλων. Είναι ικανή να παρέχει ένα ευρύ φάσμα σχετικών υπηρεσιών θωράκισης της παρεχόμενης ασφάλειας, όπως ο καθορισμός των πολιτικών ασφάλειας που θα ορίζουν τους κανόνες σύμφωνα με τους οποίους πρέπει να λειτουργούν τα συστήματα κρυπτογράφησης και ο προσδιορισμός της μεθοδολογίας διαχείρισης των ψηφιακών πιστοποιητικών.

Έτσι, ως ΥΔΚ (PKI) τελικά ορίζεται το σύνολο λογισμικού, υλικού, τεχνολογιών κρυπτογράφησης (ασύμμετρης ή υβριδικής), ανθρώπων, πολιτικών, διαδικασιών και υπηρεσιών, που απαιτούνται για τη διαχείριση πιστοποιητικών δημόσιου κλειδιού. Μια ΥΔΚ έχει σκοπό τη διασφάλιση από κάθε πλευρά (εμπιστευτικότητα, ακεραιότητα, αδυναμία απάρνησης, αυθεντικοποίηση) των επικοινωνιών και των συναλλαγών στο Internet, παρέχοντας το πλαίσιο μέσα στο οποίο εφαρμογές μπορούν να αναπτυχθούν και να λειτουργήσουν με ασφάλεια (Γεωργιάδης, 2002; Pangalos et al., 2002). Παραδείγματα τέτοιων εφαρμογών που αξιοποιούν μια ΥΔΚ (PKI-enabled applications) είναι η ασφαλής επικοινωνία μεταξύ των προγραμμάτων πλοήγησης και των εξυπηρετητών Web, το ηλεκτρονικό ταχυδρομείο, η Ηλεκτρονική Ανταλλαγή Δεδομένων (Electronic Data Interchange, EDI), οι συναλλαγές με πιστωτικές κάρτες στο Internet, τα Εικονικά Ιδιωτικά Δίκτυα (Virtual Private Networks, VPNs) κλπ.

Τα συστατικά μέρη ενός PKI είναι:

o Αρχή Πιστοποίησης (ΑΠ).

o Αρχή Καταχώρησης (ΑΚ)

o Σύστημα διανομής ψηφιακών πιστοποιητικών

o Πολιτική πιστοποίησης


Αρχή Πιστοποίησης (ΑΠ)



Μια ΑΠ (Certification Authority, CA) αποτελεί το βασικό (και το μοναδικό απαραίτητο) μέρος μιας ΥΔΚ. Πρόκειται για μια αρχή, την οποία εμπιστεύονται ένας ή περισσότεροι χρήστες για τη δημιουργία και την αντιστοίχιση πιστοποιητικών δημόσιου κλειδιού. Προαιρετικά, η ΑΠ μπορεί να είναι αυτή που δημιουργεί τα απαιτούμενα κλειδιά. Αξίζει να σημειωθεί ότι μια ΑΠ είναι υπεύθυνη όχι μόνο για την έκδοση των πιστοποιητικών δημόσιων κλειδιών αλλά και για τη διαχείρισή τους για όλον τον κύκλο ζωής τους (X.509, 2008). Συνοπτικά, οι κύριες λειτουργίες της είναι:

Συνοπτικά, οι κύριες λειτουργίες της είναι:

1)Η δημιουργία πιστοποιητικών που συνδέουν την ταυτότητα ενός χρήστη ή συστήματος με ένα δημόσιο κλειδί.

2) Ο προγραμματισμός των ημερομηνιών λήξης των πιστοποιητικών.

3) Η δημοσίευση των λιστών ανάκλησης πιστοποιητικών (Certification Revocation Lists, CRLs).


Κάθε οργανισμός που ορίζει μια δική του υποδομή δημόσιου κλειδιού, μπορεί να ορίσει μια δική του ΑΠ ή να χρησιμοποιήσει τις υπηρεσίες μιας υπάρχουσας εμπορικής ΑΠ. Σε επόμενη παράγραφο θα δοθούν περισσότερες λεπτομέρειες που αφορούν την ίδια την πιστοποίηση, τις ιεραρχίες των ΑΠ καθώς και τα είδη των πιστοποιητικών που διατίθενται. Πρόκειται πραγματικά για μια περιοχή που βρίσκεται σε συνεχή εξέλίξη.

Αρχή Καταχώρησης (ΑΚ)



Η ΑΚ (Registration Authority, RA) αποτελεί μια προαιρετικά ξεχωριστή από την ΑΠ οντότητα, η οποία αναλαμβάνει την ευθύνη ορισμένων διαχειριστικών διαδικασιών, απαραίτητων για την καταχώριση των οντοτήτων που αποτελούν υποκείμενα πιστοποίησης. Τέτοια διαχειριστικά καθήκοντα είναι (X.509, 2008):

Τέτοια διαχειριστικά καθήκοντα είναι

1)Η επιβεβαίωση της ταυτότητας του υποκειμένου πιστοποίησης.

2) Η επικύρωση ότι το υποκείμενο αυτό επιτρέπεται να χρησιμοποιεί ως «δικά του» αυτά που δήλωσε κατά την αίτηση χορήγησης ενός πιστοποιητικού δημόσιου κλειδιού.

3) Η επαλήθευση ότι το υποκείμενο κατέχει το ιδιωτικό κλειδί το οποίο συσχετίζεται με το δημόσιο που ζητά να περιέχεται στο προς έκδοση πιστοποιητικό.


Η ΑΚ υλοποιεί σε ένα βαθμό το περιβάλλον προσέγγισης των χρηστών με μια ΑΠ, μεταφέροντας στην ΑΠ όλες τις αιτήσεις για δημιουργία πιστοποιητικών. Η ποιότητα της διαδικασίας ελέγχου της αυθεντικότητας του χρήστη (π.χ. τηλεφωνική επικοινωνία, φυσική παρουσία κ.ό.κ.), καθορίζει και την τάξη (class) εμπιστοσύνης του πιστοποιητικού.

Σύστημα διανομής πιστοποιητικών

Διάφοροι τρόποι υπάρχουν για τη διανομή των πιστοποιητικών. Αν και οι ίδιοι οι χρήστες θα μπορούσαν να αναλάβουν την ευθύνη της διανομής των πιστοποιητικών τους, η πιο συνηθισμένη μέθοδος είναι μέσω μια υπηρεσίας καταλόγου (directory service). Κάντε κλικ για περισσότερα:

Έτσι, αντί να χρειάζεται οι χρήστες να αποθηκεύουν τα πιστοποιητικά τους τοπικά, μπορούν αυτά να αποθηκεύονται σε ένα κατάλληλο εξυπηρετητή καταλόγου. Σχεδόν όλα τα PKI διαθέτουν τέτοιους εξυπηρετητές για την αποθήκευση πιστοποιητικών, σύμφωνους με το πρότυπο X.500. Όταν λοιπόν μια ΑΠ εκδώσει ένα πιστοποιητικό, το αποθηκεύει σε μια "αποθήκη" πιστοποιητικών (Certificate Repository). Έτσι, όποτε κάποιος ζητήσει ένα πιστοποιητικό που υπάρχει σε αυτό το αρχείο, μπορεί να το πάρει χωρίς να χρειάζεται να το ζητήσει από τον κάτοχό του.



Πολιτική Πιστοποίησης


Η πολιτική πιστοποίησης (certificate policy, CP) είναι ένα σύνολο κανόνων που υποδεικνύει τη δυνατότητα εφαρμογής (applicability) της χρήσης πιστοποιητικών σε μια ιδιαίτερη ομάδα εφαρμογών, έτσι όπως αυτή προσδιορίζεται από τις κοινές απαιτήσεις ασφάλειάς τους. Περιγράφει τους γενικούς κανόνες που πρέπει να ακολουθούνται για την ασφάλεια των πληροφοριών, και ειδικότερα αυτούς που αφορούν τη χρήση της κρυπτογραφίας με σκοπό την επίτευξη ενός «αποδεκτού» (acceptable) επίπεδου διασφάλισης. Συνήθως περιλαμβάνει οδηγίες για το χειρισμό των κλειδιών και άλλων σημαντικών πληροφοριών και προσδιορίζει διάφορα επίπεδα ελέγχου ανάλογα με το επίπεδο του κινδύνου κάθε πληροφορίας. Κάντε κλικ για περισσότερα:

Έκφραση της πολιτικής ασφάλειας αποτελεί η καλούμενη δήλωση πρακτικών της πιστοποίησης (Certificate Practice Statement, CPS), μια παρουσίαση των τρόπων εφαρμογής που χρησιμοποιεί η ΑΠ για την έκδοση πιστοποιητικών. Το CPS είναι ένα αναλυτικό έγγραφο που περιγράφει όλες τις λειτουργικές διαδικασίες που πρέπει να ακολουθηθούν ώστε να εφαρμοστεί η πολιτική ασφάλειας στην πράξη. Περιλαμβάνει πληροφορίες για θέματα όπως η κατασκευή και η λειτουργία των ΑΠ και ΑΚ, η δημιουργία, η ανάκληση και η διανομή των πιστοποιητικών, ή ακόμη και πληροφορίες αναφορικά με τη δημιουργία, την κατοχύρωση, την επιβεβαίωση και την αποθήκευση των κλειδιών.


4.3 Υπηρεσίες μιας Υποδομής Δημόσιου Κλειδιού

Οι υπηρεσίες που μπορεί να παρέχει μια ΥΔΚ, μπορούν να χωριστούν σε τρεις κατηγορίες:

1. Υπηρεσίες διαχείρισης πιστοποιητικών

2. Υπηρεσίες κρυπτογράφησης

3. Βοηθητικές υπηρεσίες

Υπηρεσίες διαχείρισης πιστοποιητικών - Αποτελούν τον πυρήνα ενός PKI και παρέχονται απαραιτήτως από μια ΑΠ. Περιλαμβάνουν:

1) Έκδοση πιστοποιητικού (Certificate Issuance)
2) Ανάκληση πιστοποιητικού (Certificate Revocation)
3) Δημοσίευση πιστοποιητικού (Certificate Publishing)
4) Αρχειοθέτηση πιστοποιητικού (Certificate Archiving)
5) Δημιουργία / έγκριση πολιτικής πιστοποίησης (CP formation / approval)


Υπηρεσίες κρυπτογράφησης - Τέτοιες υπηρεσίες είναι:

1) Η δημιουργία. των ζευγαριών των κλειδιών ασύμμετρης κρυπτογράφησης.
2) Η δημιουργία των κλειδιών εμπιστευτικότητας (συμμετρικής κρυπτογραφίας) για την υποστήριξη των ψηφιακών φακέλων.
3) Η διανομή των κλειδιών εμπιστευτικότητας
4) Η δημιουργία των ψηφιακών υπογραφών.
5) Η επιβεβαίωση της εγκυρότητας των ψηφιακών υπογραφών.


Βοηθητικές υπηρεσίες - Υπάρχουν και ορισμένες άλλες υπηρεσίες που θεωρούνται βασικά μέρη μιας τέτοιας υποδομής:
  • Καταχώρηση (Registration)

Καταχώρηση (Registration): Αναφερθήκαμε στην υπηρεσία αυτή της διαχείρισης των καταχωρήσεων - εγγραφών όταν εξηγήθηκε ο ρόλος της Αρχής Καταχώρισης (ΑΚ), ως συστατικού μέρους μιας ΥΔΚ.

  • Ανάκτηση κλειδιού (Key Recovery)

Ανάκτηση κλειδιού (Key Recovery): Η υπηρεσία αυτή είναι υπεύθυνη για τη δημιουργία απόρρητων και καλά προφυλαγμένων αντιγράφων των κλειδιών. Σκοπός είναι η αντιμετώπιση των περιπτώσεων όπου οι χρήστες χάνουν κλειδιά, ή ξεχνάνε τους κωδικούς που απαιτούνται για να έχουν πρόσβαση σε αυτά.

  • Αποθήκευση Πληροφοριών - Αρχειοθέτηση δεδομένων (Information Repository - Data Archiving)

Αποθήκευση Πληροφοριών - Αρχειοθέτηση δεδομένων (Information Repository - Data Archiving): Η υπηρεσία αυτή αποθηκεύει, αρχειοθετεί, και διαχειρίζεται διάφορα είδη προσωπικών ή όχι δεδομένων που ανήκουν στους χρήστες της ΥΔΚ. Αποτελεί υποστηρικτική διαδικασία ενός PKI και αφορά νομικές απαιτήσεις, κυβερνητικές ή εσωτερικές ρυθμίσεις, ανάγκες λήψης αντιγράφων ασφαλείας και ανάκαμψης συστήματος, ανάκτησης προσωπικών πληροφοριών κ.ά. Η υπηρεσία αυτή αναλαμβάνει τη διαχείριση των σχετικών ψηφιακών εγγράφων και των αντίστοιχων δεδομένων τους για μεγάλες χρονικές περιόδους. Είναι υπεύθυνη για την ασφαλή αποθήκευσή τους σε διάφορα μέσα, ώστε να μην παραποιηθούν και να μην παραβιαστεί η εμπιστευτικότητά τους από μη εξουσιοδοτημένους χρήστες. Μια τέτοια υπηρεσία είναι χρήσιμη σε αρκετές περιπτώσεις. Ενδεικτικά, όταν οι χρήστες για να ικανοποιήσουν κάποια νομική υποχρέωση πρέπει να αποδείξουν ότι μια ΥΔΚ έχει λάβει γνώση ενός συγκεκριμένου εγγράφου, όταν οι χρήστες χρειάζονται μια έμπιστη υπηρεσία διατήρησης ενός εφεδρικού αντίγραφου ενός κειμένου, όταν απαιτείται η αποποίηση ευθύνης χωρίς να χρειάζεται η μετάδοση του ηλεκτρονικού εγγράφου κλπ.

  • Επιπρόσθετες υπηρεσίες

Επιπρόσθετες υπηρεσίες: Μπορεί να χρειαστούν και διάφορες άλλες υπηρεσίες, ανάλογα με την περίπτωση. Για παράδειγμα, όταν χρησιμοποιούνται έξυπνες κάρτες (smart cards) για την αποθήκευση του κλειδιού, απαιτούνται πρόσθετες υπηρεσίες για την εγγραφή τους στην κάρτα.



5. Επισημάνσεις - Συμπεράσματα

Η ασφάλεια των πληροφοριακών συστημάτων, ως κλάδος της επιστήμης της Πληροφορικής, έχει αντικείμενο την πρόληψη μη-εξουσιοδοτημένων ενεργειών των χρηστών ενός πληροφοριακού συστήματος καθώς και την ανίχνευση και την κατάλληλη αντίδραση στις περιπτώσεις εκδήλωσής τους. Τα δίκτυα μπορεί να ειδωθούν ως κάποιες περισσότερο σύνθετες περιπτώσεις πληροφοριακών συστημάτων, και έτσι είναι ουσιαστικά οι γνώριμες απειλές εμπιστευτικότητας, ακεραιότητας και διαθεσιμότητας οι οποίες εκδηλώνονται και σε αυτά αλλά με πολύ περισσότερους και διαφορετικούς τρόπους. Σε ένα μάλιστα ανοικτό δικτυακό περιβάλλον, όπως αυτό του Internet και του παγκόσμιου Ιστού, oι κίνδυνοι πολλαπλασιάζονται λόγω της έλλειψης εμπιστοσύνης προς οποιαδήποτε εξωτερική, ως προς το υπό προστασία σύστημα, οντότητα. Ο τρόπος αντιμετώπισης των προβλημάτων ασφάλειας στηρίζεται σε τρεις θεμελιώδεις αρχές. Σύμφωνα με την "αρχή της ευκολότερης διείσδυσης", ένας επίδοξος "εισβολέας" θα χρησιμοποιήσει τον ευκολότερο για αυτόν τρόπο επίθεσης. Για αυτόν τον λόγο όλες οι αδυναμίες ενός πληροφοριακού συστήματος πρέπει να προφυλαχθούν στον ίδιο βαθμό. Ακόμη περισσότερο, πρέπει τα ζητήματα ασφάλειας, από κάθε άποψη, να μελετηθούν και να απαντηθούν ως ένα ενιαίο σύνολο, έτσι ώστε να είναι δυνατή η επίτευξη ενός ομοιόμορφου επιπέδου ασφάλειας σε όλα τα συστατικά μέρη του πληροφοριακού συστήματος ή δικτύου. Σύμφωνα με τη δεύτερη "αρχή της κατάλληλης προστασίας", τα μέρη ενός συστήματος πρέπει να προστατεύονται πάντα σε ένα βαθμό ανάλογο και συνεπή ως προς την αξία τους. Τέλος, σημαντικό ρόλο διαδραματίζει και η τρίτη "αρχή της αποτελεσματικότητας", η οποία ορίζει ως προϋποθέσεις αποτελεσματικότητας των μέτρων προστασίας, την ευχρηστία, την επάρκεια και την καταλληλότητά τους, έτσι ώστε αυτά να είναι όντως σε ισχύ όταν εκδηλωθούν τα προβλήματα ασφάλειας.

Στο κεφάλαιο αυτό παρουσιάστηκαν οι σημαντικότερες από τις διαθέσιμες τεχνολογίες διασφάλισης στο Διαδίκτυο, οι οποίες αποτελούν πολύ χρήσιμα εργαλεία υποστήριξης μέτρων προστασίας. Η κατάλληλη διαμόρφωση και εφαρμογή τους, πρέπει να γίνεται πάντοτε με γνώμονα τις θεμελιώδεις προαναφερθείσες αρχές, έτσι ώστε αυτές να οδηγούν στο υψηλότερο δυνατό επίπεδο ασφάλειας. Στις κυριότερες διαθέσιμες τεχνολογίες ασφάλειας στο Διαδίκτυο περιλαμβάνονται η κρυπτογράφηση, οι ψηφιακές υπογραφές, και οι υποδομές δημόσιου κλειδιού. Η κρυπτογραφία είναι στις μέρες μας κοινά αποδεκτή σαν το πλέον απαραίτητο εργαλείο ασφάλειας στο Διαδίκτυο. Δύο σημαντικές εφαρμογές κρυπτογραφίας είναι η κρυπτογράφηση και οι ψηφιακές υπογραφές. Η κρυπτογράφηση μπορεί να εξασφαλίσει ότι οι διακινούμενες πληροφορίες είναι εμπιστευτικές. Οι ψηφιακές υπογραφές βοηθούν στην επικύρωση της προέλευσης δεδομένων και επιβεβαιώνουν αν τα δεδομένα έχουν αλλοιωθεί. Περαιτέρω δυνατότητες προσφέρονται μέσω των υποδομών δημοσίου κλειδιού, οι οποίες με την έκδοση των πιστοποιητικών ταυτότητας, αποδεικνύονται ικανές για την υποστήριξη ενός μεγάλου μέρους λειτουργιών ασφάλειας στο Internet.

6. Τεστ αξιολόγησης


Σημείωση: Η διαβάθμιση δυσκολίας των κριτηρίων αξιολόγησης δίνεται με το πλήθος των αναγραφόμενων αστερίσκων.

7. Βιβλιογραφία

Ahuja, V. (1997). Secure Commerce on the Internet, AP Professional, ISBN: 0-12-045597-8.

Bullock, A., & Benford, S. (1999). An access control framework for multi-user collaborative environments. In Proceedings of the international ACM SIGGROUP conference on Supporting group work, ACM, pp. 140-149.

Cherdantseva, Y., & Hilton, J. (2013). A reference model of information assurance & security. In Availability, Reliability and Security (ARES), 2013 Eighth International Conference on, IEEE, pp. 546-555.

Ferguson, N., Schneier, B., & Kohno, T. (2011). Cryptography engineering: design principles and practical applications. John Wiley & Sons.

Gollmann, D. (2011). Computer Security, 3rd edition, Wiley, ISBN: 978-0470741153.

Gritzalis, D. (1999). Trusted Third Parties and Public Key Infrastructure: An Overview, Teaching Material (European Intensive Programme on Information and Communication Technologies Security IPICS 99), University of the Aegean, Greece.

ISO/IEC 27000 (2014). Information technology – Security techniques - Information security management systems - Overview and vocabulary, http://standards.iso.org/ittf/PubliclyAvailableStandards/c063411_ISO_IEC_27000_2014.zip

Laudon, K. & Traver, C. (2014). E-Commerce, 10/E, Prentice Hall, ISBN: 978-0133024449.

Mohapatra, K. P. (2000). Public Key Cryptography, Crossroads ACM Magazine, Issue 7.1 (Fall 2000), ISSN: 1528-4972, ACM, pp. 14-22.

Pangalos, G. (1992). Security in Medical Database Systems, EU, SEISMED project report, No. INT/S.3/92, Aristotle University of Thessaloniki, Greece.

Pangalos, G. (1998). EU MEDSEC Project Report, deliverable D14: Review of Existing and Emerging Work on Secure Medical Database Systems, Health Care Security and Privacy in the Information Society, ISIS Programme, Aristotle University of Thessaloniki, Greece.

Pangalos, G., Mavridis I., Ilioudis C. & Georgiadis C. (2002). Developing a Public Key Infrastructure for a Secure Regional e-Health Environment, Methods of Information in Medicine, Vol. 41/5, Schattauer Publishing Co., pp. 414-418.

Pfleeger, C. P. & Pfleeger, S. L. (2007). Security in Computing, Fourth Edition, Prentice Hall, ISBN: 978-0132390774.

Public Key Infrastructure (X.509), (2008). RFC 5280 (IETF's PKIX Certificate), http://tools.ietf.org/pdf/rfc5280.pdf

Recommendation ITU-T Χ.800 technically aligned with ISO/IEC 7498-2 (1991). Information processing systems – Open systems interconnection – Basic Reference Model – Part 2: Security architecture, http://www.itu.int/ITU-T/recommendations/rec.aspx?id=3102

Spillman, R. (2005). Classical and Contemporary Cryptology, Prentice Hall, ISBN: 0131828312.

Γεωργιάδης, Χ. Κ. (2002). Ασφάλεια Πληροφοριακών Συστημάτων και Εφαρμογές στον Έλεγχο Προσπέλασης Ιατρικών Βάσεων Δεδομένων μέσω Internet, Διδακτορική Διατριβή, Πολυτεχνική Σχολή, Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης.

Γκρίτζαλης, Σ. & Γεωργιάδης, Π. (1997). Ψηφιακές Υπογραφές: Διεθνής Εμπειρία, Τάσεις και Προοπτικές, Εισήγηση στα πλαίσια σεμιναρίου του ανθρώπινου δικτύου ΙΚΑΡΟΣ για την Ασφάλειας, Ποιότητας και Αξιοπιστίας στις Τεχνολογίες Πληροφοριών και Επικοινωνιών, ΕΠΕΤ ΙΙ.

Πάγκαλος, Γ. &  Μαυρίδης, Ι. (2002). Ασφάλεια πληροφοριακών συστημάτων και δικτύων, Ανίκουλας, ISBN: 978-9605160180.



 


Τέλος Κεφαλαίου